package com.dynamixsoftware.printershare;

import android.content.Context;
import android.os.Handler;
import com.dynamixsoftware.printershare.data.Printer;
import com.dynamixsoftware.printershare.mdns.DnsPacketOut;
import com.dynamixsoftware.printershare.mdns.DnsQuestion;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.net.MulticastSocket;
import java.util.ArrayList;
import java.util.Vector;

public class ScanThreadBonjour
  extends Thread
{
  private static final String[] SRV_LST = { "_pdl-datastream._tcp.local.", "_canon-bjnp1._tcp.local.", "_printer._tcp.local.", "_ipp._tcp.local.", "_printershare._tcp.local." };
  private Context context;
  private boolean[] destroyed = new boolean[1];
  private ArrayList<DatagramPacket> packets = new ArrayList();
  private Vector<Printer> printers;
  private String rq_pid;
  private Thread sender = new Thread()
  {
    public void run()
    {
      int i = 0;
      DnsPacketOut localDnsPacketOut1;
      if (i < 3)
      {
        synchronized (ScanThreadBonjour.this.destroyed)
        {
          if (ScanThreadBonjour.this.destroyed[0] != 0) {
            return;
          }
        }
        try
        {
          localDnsPacketOut1 = new DnsPacketOut(0, true);
          int j = 0;
          if (j < ScanThreadBonjour.SRV_LST.length)
          {
            if (ScanThreadBonjour.this.rq_pid != null)
            {
              int i1 = ScanThreadBonjour.this.rq_pid.indexOf(ScanThreadBonjour.SRV_LST[j]);
              if (i1 >= 0) {}
            }
            for (;;)
            {
              j++;
              break;
              localObject1 = finally;
              throw localObject1;
              localDnsPacketOut1.addQuestion(new DnsQuestion(ScanThreadBonjour.SRV_LST[j], 12, 1));
            }
            k = 0;
          }
        }
        catch (Exception localException1)
        {
          localException1.printStackTrace();
          App.reportThrowable(localException1);
        }
      }
      for (;;)
      {
        int k;
        if (k < ScanThreadBonjour.SRV_LST.length)
        {
          synchronized (ScanThreadBonjour.this.destroyed)
          {
            if (ScanThreadBonjour.this.destroyed[0] == 0) {
              break label313;
            }
            return;
          }
          if (localDnsPacketOut1.isEmpty()) {
            continue;
          }
          DatagramPacket localDatagramPacket2 = localDnsPacketOut1.createPacket();
          localDatagramPacket2.setAddress(InetAddress.getByName("224.0.0.251"));
          localDatagramPacket2.setPort(5353);
          for (int n = 0; n < ScanThreadBonjour.this.sockets.size(); n++)
          {
            synchronized (ScanThreadBonjour.this.destroyed)
            {
              if (ScanThreadBonjour.this.destroyed[0] != 0) {
                return;
              }
            }
            ((ScanThreadBonjour.SocketThread)ScanThreadBonjour.this.sockets.get(n)).send(localDatagramPacket2);
          }
          try
          {
            Thread.sleep(1000L);
          }
          catch (InterruptedException localInterruptedException2)
          {
            return;
          }
          for (;;)
          {
            label313:
            DatagramPacket localDatagramPacket1;
            int m;
            try
            {
              if ((ScanThreadBonjour.this.rq_pid != null) && (ScanThreadBonjour.this.rq_pid.indexOf(ScanThreadBonjour.SRV_LST[k]) < 0)) {
                break label522;
              }
              DnsPacketOut localDnsPacketOut2 = new DnsPacketOut(0, true);
              localDnsPacketOut2.addQuestion(new DnsQuestion(ScanThreadBonjour.SRV_LST[k], 12, 1));
              localDatagramPacket1 = localDnsPacketOut2.createPacket();
              localDatagramPacket1.setAddress(InetAddress.getByName("224.0.0.251"));
              localDatagramPacket1.setPort(5353);
              m = 0;
              if (m >= ScanThreadBonjour.this.sockets.size()) {
                break;
              }
              synchronized (ScanThreadBonjour.this.destroyed)
              {
                if (ScanThreadBonjour.this.destroyed[0] != 0) {
                  return;
                }
              }
            }
            catch (Exception localException2)
            {
              localException2.printStackTrace();
              App.reportThrowable(localException2);
            }
            ((ScanThreadBonjour.SocketThread)ScanThreadBonjour.this.sockets.get(m)).send(localDatagramPacket1);
            m++;
          }
          try
          {
            Thread.sleep(1000L);
          }
          catch (InterruptedException localInterruptedException1)
          {
            return;
          }
        }
        else
        {
          i++;
          break;
          return;
        }
        label522:
        k++;
      }
    }
  };
  private ArrayList<SocketThread> sockets = new ArrayList();
  private Handler status;
  private int timeout;
  
  public ScanThreadBonjour(Context paramContext, int paramInt, String paramString, Handler paramHandler)
  {
    this.context = paramContext;
    this.timeout = paramInt;
    this.status = paramHandler;
    this.rq_pid = paramString;
    this.printers = new Vector();
  }
  
  public void destroy()
  {
    synchronized (this.destroyed)
    {
      this.destroyed[0] = true;
      for (int i = 0; i < this.sockets.size(); i++) {
        ((SocketThread)this.sockets.get(i)).interrupt();
      }
      interrupt();
      return;
    }
  }
  
  public Vector<Printer> getPrinters()
  {
    return this.printers;
  }
  
  /* Error */
  public void run()
  {
    // Byte code:
    //   0: new 110	android/os/Message
    //   3: dup
    //   4: invokespecial 111	android/os/Message:<init>	()V
    //   7: astore_1
    //   8: aload_1
    //   9: iconst_1
    //   10: putfield 114	android/os/Message:what	I
    //   13: aload_0
    //   14: getfield 68	com/dynamixsoftware/printershare/ScanThreadBonjour:status	Landroid/os/Handler;
    //   17: aload_1
    //   18: invokevirtual 120	android/os/Handler:sendMessage	(Landroid/os/Message;)Z
    //   21: pop
    //   22: aload_0
    //   23: getfield 55	com/dynamixsoftware/printershare/ScanThreadBonjour:destroyed	[Z
    //   26: astore_3
    //   27: aload_3
    //   28: monitorenter
    //   29: invokestatic 125	com/dynamixsoftware/printershare/App:getActiveNetworkInterfaces	()Ljava/util/Vector;
    //   32: astore 167
    //   34: aload 167
    //   36: ifnull +45 -> 81
    //   39: aload 167
    //   41: invokevirtual 126	java/util/Vector:size	()I
    //   44: ifne +37 -> 81
    //   47: new 110	android/os/Message
    //   50: dup
    //   51: invokespecial 111	android/os/Message:<init>	()V
    //   54: astore 168
    //   56: aload 168
    //   58: iconst_4
    //   59: putfield 114	android/os/Message:what	I
    //   62: aload 168
    //   64: iconst_0
    //   65: putfield 129	android/os/Message:arg1	I
    //   68: aload_0
    //   69: getfield 68	com/dynamixsoftware/printershare/ScanThreadBonjour:status	Landroid/os/Handler;
    //   72: aload 168
    //   74: invokevirtual 120	android/os/Handler:sendMessage	(Landroid/os/Message;)Z
    //   77: pop
    //   78: aload_3
    //   79: monitorexit
    //   80: return
    //   81: aload 167
    //   83: ifnull +271 -> 354
    //   86: iconst_0
    //   87: istore 174
    //   89: aload 167
    //   91: invokevirtual 126	java/util/Vector:size	()I
    //   94: istore 175
    //   96: iload 174
    //   98: iload 175
    //   100: if_icmpge +254 -> 354
    //   103: aload 167
    //   105: iload 174
    //   107: invokevirtual 130	java/util/Vector:get	(I)Ljava/lang/Object;
    //   110: checkcast 132	com/dynamixsoftware/printershare/App$NetworkInterfaceData
    //   113: astore 176
    //   115: aload 176
    //   117: getfield 136	com/dynamixsoftware/printershare/App$NetworkInterfaceData:is_multicast	Z
    //   120: istore 177
    //   122: iload 177
    //   124: ifeq +30 -> 154
    //   127: new 97	com/dynamixsoftware/printershare/ScanThreadBonjour$SocketThread
    //   130: dup
    //   131: aload_0
    //   132: aload 176
    //   134: invokespecial 139	com/dynamixsoftware/printershare/ScanThreadBonjour$SocketThread:<init>	(Lcom/dynamixsoftware/printershare/ScanThreadBonjour;Lcom/dynamixsoftware/printershare/App$NetworkInterfaceData;)V
    //   137: astore 178
    //   139: aload 178
    //   141: invokevirtual 142	com/dynamixsoftware/printershare/ScanThreadBonjour$SocketThread:start	()V
    //   144: aload_0
    //   145: getfield 51	com/dynamixsoftware/printershare/ScanThreadBonjour:sockets	Ljava/util/ArrayList;
    //   148: aload 178
    //   150: invokevirtual 146	java/util/ArrayList:add	(Ljava/lang/Object;)Z
    //   153: pop
    //   154: iinc 174 1
    //   157: goto -68 -> 89
    //   160: astore 179
    //   162: aload 179
    //   164: invokevirtual 149	java/lang/Exception:printStackTrace	()V
    //   167: aload 179
    //   169: invokestatic 153	com/dynamixsoftware/printershare/App:reportThrowable	(Ljava/lang/Throwable;)V
    //   172: goto -18 -> 154
    //   175: astore 5
    //   177: aload 5
    //   179: invokevirtual 149	java/lang/Exception:printStackTrace	()V
    //   182: new 155	java/lang/StringBuilder
    //   185: dup
    //   186: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   189: ldc 158
    //   191: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   194: aload 5
    //   196: invokevirtual 166	java/lang/Exception:getMessage	()Ljava/lang/String;
    //   199: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   202: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   205: astore 6
    //   207: aload 5
    //   209: invokestatic 153	com/dynamixsoftware/printershare/App:reportThrowable	(Ljava/lang/Throwable;)V
    //   212: aload_3
    //   213: monitorexit
    //   214: aload 6
    //   216: ifnonnull +76 -> 292
    //   219: new 171	java/util/Hashtable
    //   222: dup
    //   223: invokespecial 172	java/util/Hashtable:<init>	()V
    //   226: astore 7
    //   228: new 171	java/util/Hashtable
    //   231: dup
    //   232: invokespecial 172	java/util/Hashtable:<init>	()V
    //   235: astore 8
    //   237: new 171	java/util/Hashtable
    //   240: dup
    //   241: invokespecial 172	java/util/Hashtable:<init>	()V
    //   244: astore 9
    //   246: new 171	java/util/Hashtable
    //   249: dup
    //   250: invokespecial 172	java/util/Hashtable:<init>	()V
    //   253: astore 10
    //   255: new 174	java/util/HashSet
    //   258: dup
    //   259: invokespecial 175	java/util/HashSet:<init>	()V
    //   262: astore 11
    //   264: aload_0
    //   265: getfield 62	com/dynamixsoftware/printershare/ScanThreadBonjour:sender	Ljava/lang/Thread;
    //   268: invokevirtual 176	java/lang/Thread:start	()V
    //   271: aload_0
    //   272: getfield 55	com/dynamixsoftware/printershare/ScanThreadBonjour:destroyed	[Z
    //   275: astore 12
    //   277: aload 12
    //   279: monitorenter
    //   280: aload_0
    //   281: getfield 55	com/dynamixsoftware/printershare/ScanThreadBonjour:destroyed	[Z
    //   284: iconst_0
    //   285: baload
    //   286: ifeq +142 -> 428
    //   289: aload 12
    //   291: monitorexit
    //   292: aload 6
    //   294: ifnull +4088 -> 4382
    //   297: new 110	android/os/Message
    //   300: dup
    //   301: invokespecial 111	android/os/Message:<init>	()V
    //   304: astore 161
    //   306: aload 161
    //   308: iconst_3
    //   309: putfield 114	android/os/Message:what	I
    //   312: aload 161
    //   314: iconst_0
    //   315: putfield 129	android/os/Message:arg1	I
    //   318: new 178	android/os/Bundle
    //   321: dup
    //   322: invokespecial 179	android/os/Bundle:<init>	()V
    //   325: astore 162
    //   327: aload 162
    //   329: ldc 181
    //   331: aload 6
    //   333: invokevirtual 185	android/os/Bundle:putString	(Ljava/lang/String;Ljava/lang/String;)V
    //   336: aload 161
    //   338: aload 162
    //   340: invokevirtual 189	android/os/Message:setData	(Landroid/os/Bundle;)V
    //   343: aload_0
    //   344: getfield 68	com/dynamixsoftware/printershare/ScanThreadBonjour:status	Landroid/os/Handler;
    //   347: aload 161
    //   349: invokevirtual 120	android/os/Handler:sendMessage	(Landroid/os/Message;)Z
    //   352: pop
    //   353: return
    //   354: aload_0
    //   355: getfield 51	com/dynamixsoftware/printershare/ScanThreadBonjour:sockets	Ljava/util/ArrayList;
    //   358: invokevirtual 91	java/util/ArrayList:size	()I
    //   361: istore 170
    //   363: aconst_null
    //   364: astore 6
    //   366: iload 170
    //   368: ifne -156 -> 212
    //   371: new 97	com/dynamixsoftware/printershare/ScanThreadBonjour$SocketThread
    //   374: dup
    //   375: aload_0
    //   376: aconst_null
    //   377: invokespecial 139	com/dynamixsoftware/printershare/ScanThreadBonjour$SocketThread:<init>	(Lcom/dynamixsoftware/printershare/ScanThreadBonjour;Lcom/dynamixsoftware/printershare/App$NetworkInterfaceData;)V
    //   380: astore 171
    //   382: aload 171
    //   384: invokevirtual 142	com/dynamixsoftware/printershare/ScanThreadBonjour$SocketThread:start	()V
    //   387: aload_0
    //   388: getfield 51	com/dynamixsoftware/printershare/ScanThreadBonjour:sockets	Ljava/util/ArrayList;
    //   391: aload 171
    //   393: invokevirtual 146	java/util/ArrayList:add	(Ljava/lang/Object;)Z
    //   396: pop
    //   397: aconst_null
    //   398: astore 6
    //   400: goto -188 -> 212
    //   403: astore 172
    //   405: aload 172
    //   407: invokevirtual 149	java/lang/Exception:printStackTrace	()V
    //   410: aload 172
    //   412: invokestatic 153	com/dynamixsoftware/printershare/App:reportThrowable	(Ljava/lang/Throwable;)V
    //   415: aconst_null
    //   416: astore 6
    //   418: goto -206 -> 212
    //   421: astore 4
    //   423: aload_3
    //   424: monitorexit
    //   425: aload 4
    //   427: athrow
    //   428: aload 12
    //   430: monitorexit
    //   431: aload_0
    //   432: getfield 53	com/dynamixsoftware/printershare/ScanThreadBonjour:packets	Ljava/util/ArrayList;
    //   435: astore 14
    //   437: aload 14
    //   439: monitorenter
    //   440: aload_0
    //   441: getfield 53	com/dynamixsoftware/printershare/ScanThreadBonjour:packets	Ljava/util/ArrayList;
    //   444: invokevirtual 91	java/util/ArrayList:size	()I
    //   447: ifne +87 -> 534
    //   450: iconst_0
    //   451: istore 16
    //   453: iconst_0
    //   454: istore 17
    //   456: aload_0
    //   457: getfield 51	com/dynamixsoftware/printershare/ScanThreadBonjour:sockets	Ljava/util/ArrayList;
    //   460: invokevirtual 91	java/util/ArrayList:size	()I
    //   463: istore 18
    //   465: iload 17
    //   467: iload 18
    //   469: if_icmpge +42 -> 511
    //   472: aload_0
    //   473: getfield 51	com/dynamixsoftware/printershare/ScanThreadBonjour:sockets	Ljava/util/ArrayList;
    //   476: iload 17
    //   478: invokevirtual 95	java/util/ArrayList:get	(I)Ljava/lang/Object;
    //   481: checkcast 97	com/dynamixsoftware/printershare/ScanThreadBonjour$SocketThread
    //   484: invokevirtual 193	com/dynamixsoftware/printershare/ScanThreadBonjour$SocketThread:isAlive	()Z
    //   487: istore 19
    //   489: iload 19
    //   491: ifeq +6 -> 497
    //   494: iinc 16 1
    //   497: iinc 17 1
    //   500: goto -44 -> 456
    //   503: astore 13
    //   505: aload 12
    //   507: monitorexit
    //   508: aload 13
    //   510: athrow
    //   511: aload_0
    //   512: getfield 51	com/dynamixsoftware/printershare/ScanThreadBonjour:sockets	Ljava/util/ArrayList;
    //   515: invokevirtual 91	java/util/ArrayList:size	()I
    //   518: istore 20
    //   520: iload 16
    //   522: iload 20
    //   524: if_icmpne +166 -> 690
    //   527: aload_0
    //   528: getfield 53	com/dynamixsoftware/printershare/ScanThreadBonjour:packets	Ljava/util/ArrayList;
    //   531: invokevirtual 198	java/lang/Object:wait	()V
    //   534: aload_0
    //   535: getfield 53	com/dynamixsoftware/printershare/ScanThreadBonjour:packets	Ljava/util/ArrayList;
    //   538: invokevirtual 202	java/util/ArrayList:toArray	()[Ljava/lang/Object;
    //   541: astore 21
    //   543: aload_0
    //   544: getfield 53	com/dynamixsoftware/printershare/ScanThreadBonjour:packets	Ljava/util/ArrayList;
    //   547: invokevirtual 205	java/util/ArrayList:clear	()V
    //   550: aload 14
    //   552: monitorexit
    //   553: aload 21
    //   555: arraylength
    //   556: ifeq -264 -> 292
    //   559: iconst_0
    //   560: istore 22
    //   562: aload 21
    //   564: arraylength
    //   565: istore 23
    //   567: iload 22
    //   569: iload 23
    //   571: if_icmpge +24 -> 595
    //   574: aload_0
    //   575: getfield 55	com/dynamixsoftware/printershare/ScanThreadBonjour:destroyed	[Z
    //   578: astore 136
    //   580: aload 136
    //   582: monitorenter
    //   583: aload_0
    //   584: getfield 55	com/dynamixsoftware/printershare/ScanThreadBonjour:destroyed	[Z
    //   587: iconst_0
    //   588: baload
    //   589: ifeq +123 -> 712
    //   592: aload 136
    //   594: monitorexit
    //   595: iconst_0
    //   596: istore 24
    //   598: aload 7
    //   600: invokevirtual 209	java/util/Hashtable:keys	()Ljava/util/Enumeration;
    //   603: astore 25
    //   605: aload 25
    //   607: invokeinterface 214 1 0
    //   612: ifeq +24 -> 636
    //   615: aload_0
    //   616: getfield 55	com/dynamixsoftware/printershare/ScanThreadBonjour:destroyed	[Z
    //   619: astore 123
    //   621: aload 123
    //   623: monitorenter
    //   624: aload_0
    //   625: getfield 55	com/dynamixsoftware/printershare/ScanThreadBonjour:destroyed	[Z
    //   628: iconst_0
    //   629: baload
    //   630: ifeq +564 -> 1194
    //   633: aload 123
    //   635: monitorexit
    //   636: iload 24
    //   638: ifne -367 -> 271
    //   641: aload 9
    //   643: invokevirtual 209	java/util/Hashtable:keys	()Ljava/util/Enumeration;
    //   646: astore 26
    //   648: aload 26
    //   650: invokeinterface 214 1 0
    //   655: ifeq -384 -> 271
    //   658: aload_0
    //   659: getfield 55	com/dynamixsoftware/printershare/ScanThreadBonjour:destroyed	[Z
    //   662: astore 27
    //   664: aload 27
    //   666: monitorenter
    //   667: aload_0
    //   668: getfield 55	com/dynamixsoftware/printershare/ScanThreadBonjour:destroyed	[Z
    //   671: iconst_0
    //   672: baload
    //   673: ifeq +774 -> 1447
    //   676: aload 27
    //   678: monitorexit
    //   679: goto -408 -> 271
    //   682: astore 28
    //   684: aload 27
    //   686: monitorexit
    //   687: aload 28
    //   689: athrow
    //   690: iload 16
    //   692: ifle -158 -> 534
    //   695: invokestatic 217	java/lang/Thread:yield	()V
    //   698: aload 14
    //   700: monitorexit
    //   701: goto -270 -> 431
    //   704: astore 15
    //   706: aload 14
    //   708: monitorexit
    //   709: aload 15
    //   711: athrow
    //   712: aload 136
    //   714: monitorexit
    //   715: new 219	com/dynamixsoftware/printershare/mdns/DnsPacketIn
    //   718: dup
    //   719: aload 21
    //   721: iload 22
    //   723: aaload
    //   724: checkcast 221	java/net/DatagramPacket
    //   727: invokespecial 224	com/dynamixsoftware/printershare/mdns/DnsPacketIn:<init>	(Ljava/net/DatagramPacket;)V
    //   730: astore 138
    //   732: aload 138
    //   734: invokevirtual 227	com/dynamixsoftware/printershare/mdns/DnsPacketIn:isResponse	()Z
    //   737: istore 139
    //   739: iload 139
    //   741: ifne +32 -> 773
    //   744: iinc 22 1
    //   747: goto -185 -> 562
    //   750: astore 137
    //   752: aload 136
    //   754: monitorexit
    //   755: aload 137
    //   757: athrow
    //   758: astore 135
    //   760: aload 135
    //   762: invokevirtual 149	java/lang/Exception:printStackTrace	()V
    //   765: aload 135
    //   767: invokestatic 153	com/dynamixsoftware/printershare/App:reportThrowable	(Ljava/lang/Throwable;)V
    //   770: goto -26 -> 744
    //   773: aload 138
    //   775: invokevirtual 231	com/dynamixsoftware/printershare/mdns/DnsPacketIn:getAnswers	()Ljava/util/List;
    //   778: astore 140
    //   780: iconst_0
    //   781: istore 141
    //   783: aload 140
    //   785: invokeinterface 234 1 0
    //   790: istore 142
    //   792: iload 141
    //   794: iload 142
    //   796: if_icmpge -52 -> 744
    //   799: aload 140
    //   801: iload 141
    //   803: invokeinterface 235 2 0
    //   808: checkcast 237	com/dynamixsoftware/printershare/mdns/DnsRecord
    //   811: astore 143
    //   813: aload 143
    //   815: invokevirtual 240	com/dynamixsoftware/printershare/mdns/DnsRecord:getType	()I
    //   818: lookupswitch	default:+3630->4448, 1:+290->1108, 12:+42->860, 16:+313->1131, 33:+166->984
    //   861: d2l
    //   862: checkcast 242	com/dynamixsoftware/printershare/mdns/DnsRecordPointer
    //   865: astore 156
    //   867: aload 156
    //   869: invokevirtual 245	com/dynamixsoftware/printershare/mdns/DnsRecordPointer:getAlias	()Ljava/lang/String;
    //   872: astore 157
    //   874: iconst_0
    //   875: istore 158
    //   877: getstatic 42	com/dynamixsoftware/printershare/ScanThreadBonjour:SRV_LST	[Ljava/lang/String;
    //   880: arraylength
    //   881: istore 159
    //   883: iload 158
    //   885: iload 159
    //   887: if_icmpge +3561 -> 4448
    //   890: aload 157
    //   892: getstatic 42	com/dynamixsoftware/printershare/ScanThreadBonjour:SRV_LST	[Ljava/lang/String;
    //   895: iload 158
    //   897: aaload
    //   898: invokevirtual 249	java/lang/String:endsWith	(Ljava/lang/String;)Z
    //   901: ifeq +3553 -> 4454
    //   904: aload_0
    //   905: getfield 70	com/dynamixsoftware/printershare/ScanThreadBonjour:rq_pid	Ljava/lang/String;
    //   908: ifnull +63 -> 971
    //   911: aload 157
    //   913: aload_0
    //   914: getfield 70	com/dynamixsoftware/printershare/ScanThreadBonjour:rq_pid	Ljava/lang/String;
    //   917: invokevirtual 252	java/lang/String:equals	(Ljava/lang/Object;)Z
    //   920: ifne +51 -> 971
    //   923: aload 157
    //   925: ldc 40
    //   927: invokevirtual 249	java/lang/String:endsWith	(Ljava/lang/String;)Z
    //   930: ifeq +3518 -> 4448
    //   933: aload_0
    //   934: getfield 70	com/dynamixsoftware/printershare/ScanThreadBonjour:rq_pid	Ljava/lang/String;
    //   937: ldc 40
    //   939: invokevirtual 249	java/lang/String:endsWith	(Ljava/lang/String;)Z
    //   942: ifeq +3506 -> 4448
    //   945: aload 157
    //   947: aload_0
    //   948: getfield 70	com/dynamixsoftware/printershare/ScanThreadBonjour:rq_pid	Ljava/lang/String;
    //   951: iconst_1
    //   952: aload_0
    //   953: getfield 70	com/dynamixsoftware/printershare/ScanThreadBonjour:rq_pid	Ljava/lang/String;
    //   956: ldc 254
    //   958: invokevirtual 258	java/lang/String:indexOf	(Ljava/lang/String;)I
    //   961: iadd
    //   962: invokevirtual 262	java/lang/String:substring	(I)Ljava/lang/String;
    //   965: invokevirtual 252	java/lang/String:equals	(Ljava/lang/Object;)Z
    //   968: ifeq +3480 -> 4448
    //   971: aload 7
    //   973: aload 157
    //   975: aload 156
    //   977: invokevirtual 266	java/util/Hashtable:put	(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    //   980: pop
    //   981: goto +3467 -> 4448
    //   984: aload 143
    //   986: checkcast 268	com/dynamixsoftware/printershare/mdns/DnsRecordService
    //   989: astore 151
    //   991: aload 151
    //   993: invokevirtual 271	com/dynamixsoftware/printershare/mdns/DnsRecordService:getName	()Ljava/lang/String;
    //   996: astore 152
    //   998: iconst_0
    //   999: istore 153
    //   1001: getstatic 42	com/dynamixsoftware/printershare/ScanThreadBonjour:SRV_LST	[Ljava/lang/String;
    //   1004: arraylength
    //   1005: istore 154
    //   1007: iload 153
    //   1009: iload 154
    //   1011: if_icmpge +3437 -> 4448
    //   1014: aload 152
    //   1016: getstatic 42	com/dynamixsoftware/printershare/ScanThreadBonjour:SRV_LST	[Ljava/lang/String;
    //   1019: iload 153
    //   1021: aaload
    //   1022: invokevirtual 249	java/lang/String:endsWith	(Ljava/lang/String;)Z
    //   1025: ifeq +3435 -> 4460
    //   1028: aload_0
    //   1029: getfield 70	com/dynamixsoftware/printershare/ScanThreadBonjour:rq_pid	Ljava/lang/String;
    //   1032: ifnull +63 -> 1095
    //   1035: aload 152
    //   1037: aload_0
    //   1038: getfield 70	com/dynamixsoftware/printershare/ScanThreadBonjour:rq_pid	Ljava/lang/String;
    //   1041: invokevirtual 252	java/lang/String:equals	(Ljava/lang/Object;)Z
    //   1044: ifne +51 -> 1095
    //   1047: aload 152
    //   1049: ldc 40
    //   1051: invokevirtual 249	java/lang/String:endsWith	(Ljava/lang/String;)Z
    //   1054: ifeq +3394 -> 4448
    //   1057: aload_0
    //   1058: getfield 70	com/dynamixsoftware/printershare/ScanThreadBonjour:rq_pid	Ljava/lang/String;
    //   1061: ldc 40
    //   1063: invokevirtual 249	java/lang/String:endsWith	(Ljava/lang/String;)Z
    //   1066: ifeq +3382 -> 4448
    //   1069: aload 152
    //   1071: aload_0
    //   1072: getfield 70	com/dynamixsoftware/printershare/ScanThreadBonjour:rq_pid	Ljava/lang/String;
    //   1075: iconst_1
    //   1076: aload_0
    //   1077: getfield 70	com/dynamixsoftware/printershare/ScanThreadBonjour:rq_pid	Ljava/lang/String;
    //   1080: ldc 254
    //   1082: invokevirtual 258	java/lang/String:indexOf	(Ljava/lang/String;)I
    //   1085: iadd
    //   1086: invokevirtual 262	java/lang/String:substring	(I)Ljava/lang/String;
    //   1089: invokevirtual 252	java/lang/String:equals	(Ljava/lang/Object;)Z
    //   1092: ifeq +3356 -> 4448
    //   1095: aload 9
    //   1097: aload 152
    //   1099: aload 151
    //   1101: invokevirtual 266	java/util/Hashtable:put	(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    //   1104: pop
    //   1105: goto +3343 -> 4448
    //   1108: aload 143
    //   1110: checkcast 273	com/dynamixsoftware/printershare/mdns/DnsRecordAddress
    //   1113: astore 149
    //   1115: aload 8
    //   1117: aload 149
    //   1119: invokevirtual 274	com/dynamixsoftware/printershare/mdns/DnsRecordAddress:getName	()Ljava/lang/String;
    //   1122: aload 149
    //   1124: invokevirtual 266	java/util/Hashtable:put	(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    //   1127: pop
    //   1128: goto +3320 -> 4448
    //   1131: aload 143
    //   1133: checkcast 276	com/dynamixsoftware/printershare/mdns/DnsRecordText
    //   1136: astore 144
    //   1138: aload 144
    //   1140: invokevirtual 277	com/dynamixsoftware/printershare/mdns/DnsRecordText:getName	()Ljava/lang/String;
    //   1143: astore 145
    //   1145: iconst_0
    //   1146: istore 146
    //   1148: getstatic 42	com/dynamixsoftware/printershare/ScanThreadBonjour:SRV_LST	[Ljava/lang/String;
    //   1151: arraylength
    //   1152: istore 147
    //   1154: iload 146
    //   1156: iload 147
    //   1158: if_icmpge +3290 -> 4448
    //   1161: aload 145
    //   1163: getstatic 42	com/dynamixsoftware/printershare/ScanThreadBonjour:SRV_LST	[Ljava/lang/String;
    //   1166: iload 146
    //   1168: aaload
    //   1169: invokevirtual 249	java/lang/String:endsWith	(Ljava/lang/String;)Z
    //   1172: ifeq +16 -> 1188
    //   1175: aload 10
    //   1177: aload 145
    //   1179: aload 144
    //   1181: invokevirtual 266	java/util/Hashtable:put	(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    //   1184: pop
    //   1185: goto +3263 -> 4448
    //   1188: iinc 146 1
    //   1191: goto -43 -> 1148
    //   1194: aload 123
    //   1196: monitorexit
    //   1197: aload 25
    //   1199: invokeinterface 281 1 0
    //   1204: checkcast 30	java/lang/String
    //   1207: astore 125
    //   1209: aload 9
    //   1211: aload 125
    //   1213: invokevirtual 284	java/util/Hashtable:get	(Ljava/lang/Object;)Ljava/lang/Object;
    //   1216: checkcast 268	com/dynamixsoftware/printershare/mdns/DnsRecordService
    //   1219: astore 126
    //   1221: aload 126
    //   1223: ifnonnull +53 -> 1276
    //   1226: aload 11
    //   1228: ldc_w 286
    //   1231: aload 125
    //   1233: invokevirtual 290	java/lang/String:concat	(Ljava/lang/String;)Ljava/lang/String;
    //   1236: invokevirtual 293	java/util/HashSet:contains	(Ljava/lang/Object;)Z
    //   1239: ifne +37 -> 1276
    //   1242: aload 11
    //   1244: ldc_w 286
    //   1247: aload 125
    //   1249: invokevirtual 290	java/lang/String:concat	(Ljava/lang/String;)Ljava/lang/String;
    //   1252: invokevirtual 294	java/util/HashSet:add	(Ljava/lang/Object;)Z
    //   1255: pop
    //   1256: iconst_1
    //   1257: istore 24
    //   1259: new 296	com/dynamixsoftware/printershare/ScanThreadBonjour$2
    //   1262: dup
    //   1263: aload_0
    //   1264: aload 125
    //   1266: invokespecial 299	com/dynamixsoftware/printershare/ScanThreadBonjour$2:<init>	(Lcom/dynamixsoftware/printershare/ScanThreadBonjour;Ljava/lang/String;)V
    //   1269: astore 134
    //   1271: aload 134
    //   1273: invokevirtual 300	com/dynamixsoftware/printershare/ScanThreadBonjour$2:start	()V
    //   1276: aload 126
    //   1278: ifnull -673 -> 605
    //   1281: aload 126
    //   1283: invokevirtual 303	com/dynamixsoftware/printershare/mdns/DnsRecordService:getServer	()Ljava/lang/String;
    //   1286: astore 127
    //   1288: aload 8
    //   1290: aload 127
    //   1292: invokevirtual 284	java/util/Hashtable:get	(Ljava/lang/Object;)Ljava/lang/Object;
    //   1295: checkcast 273	com/dynamixsoftware/printershare/mdns/DnsRecordAddress
    //   1298: ifnonnull +53 -> 1351
    //   1301: aload 11
    //   1303: ldc_w 305
    //   1306: aload 127
    //   1308: invokevirtual 290	java/lang/String:concat	(Ljava/lang/String;)Ljava/lang/String;
    //   1311: invokevirtual 293	java/util/HashSet:contains	(Ljava/lang/Object;)Z
    //   1314: ifne +37 -> 1351
    //   1317: aload 11
    //   1319: ldc_w 305
    //   1322: aload 127
    //   1324: invokevirtual 290	java/lang/String:concat	(Ljava/lang/String;)Ljava/lang/String;
    //   1327: invokevirtual 294	java/util/HashSet:add	(Ljava/lang/Object;)Z
    //   1330: pop
    //   1331: iconst_1
    //   1332: istore 24
    //   1334: new 307	com/dynamixsoftware/printershare/ScanThreadBonjour$3
    //   1337: dup
    //   1338: aload_0
    //   1339: aload 127
    //   1341: invokespecial 308	com/dynamixsoftware/printershare/ScanThreadBonjour$3:<init>	(Lcom/dynamixsoftware/printershare/ScanThreadBonjour;Ljava/lang/String;)V
    //   1344: astore 132
    //   1346: aload 132
    //   1348: invokevirtual 309	com/dynamixsoftware/printershare/ScanThreadBonjour$3:start	()V
    //   1351: aload 126
    //   1353: invokevirtual 271	com/dynamixsoftware/printershare/mdns/DnsRecordService:getName	()Ljava/lang/String;
    //   1356: astore 128
    //   1358: aload 10
    //   1360: aload 128
    //   1362: invokevirtual 284	java/util/Hashtable:get	(Ljava/lang/Object;)Ljava/lang/Object;
    //   1365: checkcast 276	com/dynamixsoftware/printershare/mdns/DnsRecordText
    //   1368: ifnonnull -763 -> 605
    //   1371: aload 11
    //   1373: ldc_w 311
    //   1376: aload 128
    //   1378: invokevirtual 290	java/lang/String:concat	(Ljava/lang/String;)Ljava/lang/String;
    //   1381: invokevirtual 293	java/util/HashSet:contains	(Ljava/lang/Object;)Z
    //   1384: ifne -779 -> 605
    //   1387: aload 11
    //   1389: ldc_w 311
    //   1392: aload 128
    //   1394: invokevirtual 290	java/lang/String:concat	(Ljava/lang/String;)Ljava/lang/String;
    //   1397: invokevirtual 294	java/util/HashSet:add	(Ljava/lang/Object;)Z
    //   1400: pop
    //   1401: iconst_1
    //   1402: istore 24
    //   1404: new 313	com/dynamixsoftware/printershare/ScanThreadBonjour$4
    //   1407: dup
    //   1408: aload_0
    //   1409: aload 128
    //   1411: invokespecial 314	com/dynamixsoftware/printershare/ScanThreadBonjour$4:<init>	(Lcom/dynamixsoftware/printershare/ScanThreadBonjour;Ljava/lang/String;)V
    //   1414: astore 130
    //   1416: aload 130
    //   1418: invokevirtual 315	com/dynamixsoftware/printershare/ScanThreadBonjour$4:start	()V
    //   1421: goto -816 -> 605
    //   1424: astore 122
    //   1426: aload 122
    //   1428: invokevirtual 149	java/lang/Exception:printStackTrace	()V
    //   1431: aload 122
    //   1433: invokestatic 153	com/dynamixsoftware/printershare/App:reportThrowable	(Ljava/lang/Throwable;)V
    //   1436: goto -831 -> 605
    //   1439: astore 124
    //   1441: aload 123
    //   1443: monitorexit
    //   1444: aload 124
    //   1446: athrow
    //   1447: aload 27
    //   1449: monitorexit
    //   1450: aconst_null
    //   1451: astore 29
    //   1453: iconst_0
    //   1454: istore 30
    //   1456: new 317	java/io/ByteArrayOutputStream
    //   1459: dup
    //   1460: invokespecial 318	java/io/ByteArrayOutputStream:<init>	()V
    //   1463: astore 31
    //   1465: aload 9
    //   1467: aload 26
    //   1469: invokeinterface 281 1 0
    //   1474: checkcast 30	java/lang/String
    //   1477: invokevirtual 284	java/util/Hashtable:get	(Ljava/lang/Object;)Ljava/lang/Object;
    //   1480: checkcast 268	com/dynamixsoftware/printershare/mdns/DnsRecordService
    //   1483: astore 40
    //   1485: aload 40
    //   1487: invokevirtual 271	com/dynamixsoftware/printershare/mdns/DnsRecordService:getName	()Ljava/lang/String;
    //   1490: astore 41
    //   1492: aload 41
    //   1494: ldc_w 320
    //   1497: invokevirtual 249	java/lang/String:endsWith	(Ljava/lang/String;)Z
    //   1500: istore 42
    //   1502: iload 42
    //   1504: ifeq +104 -> 1608
    //   1507: iconst_0
    //   1508: ifeq -860 -> 648
    //   1511: aload_0
    //   1512: getfield 64	com/dynamixsoftware/printershare/ScanThreadBonjour:context	Landroid/content/Context;
    //   1515: invokestatic 326	android/preference/PreferenceManager:getDefaultSharedPreferences	(Landroid/content/Context;)Landroid/content/SharedPreferences;
    //   1518: astore 120
    //   1520: aload 120
    //   1522: new 155	java/lang/StringBuilder
    //   1525: dup
    //   1526: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   1529: ldc_w 328
    //   1532: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   1535: aconst_null
    //   1536: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   1539: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   1542: iconst_0
    //   1543: invokeinterface 334 3 0
    //   1548: ifne -900 -> 648
    //   1551: aload 120
    //   1553: invokeinterface 338 1 0
    //   1558: new 155	java/lang/StringBuilder
    //   1561: dup
    //   1562: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   1565: ldc_w 328
    //   1568: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   1571: aconst_null
    //   1572: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   1575: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   1578: iconst_1
    //   1579: invokeinterface 344 3 0
    //   1584: invokeinterface 347 1 0
    //   1589: pop
    //   1590: goto -942 -> 648
    //   1593: astore 119
    //   1595: aload 119
    //   1597: invokevirtual 149	java/lang/Exception:printStackTrace	()V
    //   1600: aload 119
    //   1602: invokestatic 153	com/dynamixsoftware/printershare/App:reportThrowable	(Ljava/lang/Throwable;)V
    //   1605: goto -957 -> 648
    //   1608: iconst_0
    //   1609: istore 43
    //   1611: aload_0
    //   1612: getfield 75	com/dynamixsoftware/printershare/ScanThreadBonjour:printers	Ljava/util/Vector;
    //   1615: invokevirtual 126	java/util/Vector:size	()I
    //   1618: istore 44
    //   1620: iload 43
    //   1622: istore 45
    //   1624: iconst_0
    //   1625: istore 46
    //   1627: iload 45
    //   1629: iload 44
    //   1631: if_icmpge +114 -> 1745
    //   1634: aload 41
    //   1636: aload_0
    //   1637: getfield 75	com/dynamixsoftware/printershare/ScanThreadBonjour:printers	Ljava/util/Vector;
    //   1640: iload 43
    //   1642: invokevirtual 130	java/util/Vector:get	(I)Ljava/lang/Object;
    //   1645: checkcast 349	com/dynamixsoftware/printershare/data/Printer
    //   1648: getfield 352	com/dynamixsoftware/printershare/data/Printer:id	Ljava/lang/String;
    //   1651: invokevirtual 252	java/lang/String:equals	(Ljava/lang/Object;)Z
    //   1654: ifne +88 -> 1742
    //   1657: aload 41
    //   1659: ldc 40
    //   1661: invokevirtual 249	java/lang/String:endsWith	(Ljava/lang/String;)Z
    //   1664: ifeq +187 -> 1851
    //   1667: aload_0
    //   1668: getfield 75	com/dynamixsoftware/printershare/ScanThreadBonjour:printers	Ljava/util/Vector;
    //   1671: iload 43
    //   1673: invokevirtual 130	java/util/Vector:get	(I)Ljava/lang/Object;
    //   1676: checkcast 349	com/dynamixsoftware/printershare/data/Printer
    //   1679: getfield 352	com/dynamixsoftware/printershare/data/Printer:id	Ljava/lang/String;
    //   1682: ldc 40
    //   1684: invokevirtual 249	java/lang/String:endsWith	(Ljava/lang/String;)Z
    //   1687: ifeq +164 -> 1851
    //   1690: aload 41
    //   1692: aload_0
    //   1693: getfield 75	com/dynamixsoftware/printershare/ScanThreadBonjour:printers	Ljava/util/Vector;
    //   1696: iload 43
    //   1698: invokevirtual 130	java/util/Vector:get	(I)Ljava/lang/Object;
    //   1701: checkcast 349	com/dynamixsoftware/printershare/data/Printer
    //   1704: getfield 352	com/dynamixsoftware/printershare/data/Printer:id	Ljava/lang/String;
    //   1707: iconst_1
    //   1708: aload_0
    //   1709: getfield 75	com/dynamixsoftware/printershare/ScanThreadBonjour:printers	Ljava/util/Vector;
    //   1712: iload 43
    //   1714: invokevirtual 130	java/util/Vector:get	(I)Ljava/lang/Object;
    //   1717: checkcast 349	com/dynamixsoftware/printershare/data/Printer
    //   1720: getfield 352	com/dynamixsoftware/printershare/data/Printer:id	Ljava/lang/String;
    //   1723: ldc 254
    //   1725: invokevirtual 258	java/lang/String:indexOf	(Ljava/lang/String;)I
    //   1728: iadd
    //   1729: invokevirtual 262	java/lang/String:substring	(I)Ljava/lang/String;
    //   1732: invokevirtual 252	java/lang/String:equals	(Ljava/lang/Object;)Z
    //   1735: istore 118
    //   1737: iload 118
    //   1739: ifeq +112 -> 1851
    //   1742: iconst_1
    //   1743: istore 46
    //   1745: iload 46
    //   1747: ifeq +110 -> 1857
    //   1750: iconst_0
    //   1751: ifeq -1103 -> 648
    //   1754: aload_0
    //   1755: getfield 64	com/dynamixsoftware/printershare/ScanThreadBonjour:context	Landroid/content/Context;
    //   1758: invokestatic 326	android/preference/PreferenceManager:getDefaultSharedPreferences	(Landroid/content/Context;)Landroid/content/SharedPreferences;
    //   1761: astore 116
    //   1763: aload 116
    //   1765: new 155	java/lang/StringBuilder
    //   1768: dup
    //   1769: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   1772: ldc_w 328
    //   1775: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   1778: aconst_null
    //   1779: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   1782: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   1785: iconst_0
    //   1786: invokeinterface 334 3 0
    //   1791: ifne -1143 -> 648
    //   1794: aload 116
    //   1796: invokeinterface 338 1 0
    //   1801: new 155	java/lang/StringBuilder
    //   1804: dup
    //   1805: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   1808: ldc_w 328
    //   1811: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   1814: aconst_null
    //   1815: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   1818: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   1821: iconst_1
    //   1822: invokeinterface 344 3 0
    //   1827: invokeinterface 347 1 0
    //   1832: pop
    //   1833: goto -1185 -> 648
    //   1836: astore 115
    //   1838: aload 115
    //   1840: invokevirtual 149	java/lang/Exception:printStackTrace	()V
    //   1843: aload 115
    //   1845: invokestatic 153	com/dynamixsoftware/printershare/App:reportThrowable	(Ljava/lang/Throwable;)V
    //   1848: goto -1200 -> 648
    //   1851: iinc 43 1
    //   1854: goto -243 -> 1611
    //   1857: aload 40
    //   1859: invokevirtual 303	com/dynamixsoftware/printershare/mdns/DnsRecordService:getServer	()Ljava/lang/String;
    //   1862: astore 47
    //   1864: aload 40
    //   1866: invokevirtual 355	com/dynamixsoftware/printershare/mdns/DnsRecordService:getPort	()I
    //   1869: istore 48
    //   1871: aload 8
    //   1873: aload 47
    //   1875: invokevirtual 284	java/util/Hashtable:get	(Ljava/lang/Object;)Ljava/lang/Object;
    //   1878: checkcast 273	com/dynamixsoftware/printershare/mdns/DnsRecordAddress
    //   1881: astore 49
    //   1883: aload 10
    //   1885: aload 41
    //   1887: invokevirtual 284	java/util/Hashtable:get	(Ljava/lang/Object;)Ljava/lang/Object;
    //   1890: checkcast 276	com/dynamixsoftware/printershare/mdns/DnsRecordText
    //   1893: astore 50
    //   1895: iconst_0
    //   1896: istore 30
    //   1898: aconst_null
    //   1899: astore 29
    //   1901: aload 49
    //   1903: ifnull +2093 -> 3996
    //   1906: iconst_0
    //   1907: istore 30
    //   1909: aconst_null
    //   1910: astore 29
    //   1912: aload 50
    //   1914: ifnull +2082 -> 3996
    //   1917: aload 49
    //   1919: invokevirtual 359	com/dynamixsoftware/printershare/mdns/DnsRecordAddress:getAddress	()Ljava/net/InetAddress;
    //   1922: invokevirtual 364	java/net/InetAddress:getHostAddress	()Ljava/lang/String;
    //   1925: astore 51
    //   1927: aload 47
    //   1929: astore 29
    //   1931: aload 29
    //   1933: ldc_w 366
    //   1936: invokevirtual 258	java/lang/String:indexOf	(Ljava/lang/String;)I
    //   1939: istore 52
    //   1941: iload 52
    //   1943: ifle +13 -> 1956
    //   1946: aload 29
    //   1948: iconst_0
    //   1949: iload 52
    //   1951: invokevirtual 369	java/lang/String:substring	(II)Ljava/lang/String;
    //   1954: astore 29
    //   1956: new 371	java/io/PrintStream
    //   1959: dup
    //   1960: aload 31
    //   1962: iconst_1
    //   1963: invokespecial 374	java/io/PrintStream:<init>	(Ljava/io/OutputStream;Z)V
    //   1966: astore 53
    //   1968: iconst_1
    //   1969: istore 30
    //   1971: aload 53
    //   1973: new 155	java/lang/StringBuilder
    //   1976: dup
    //   1977: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   1980: ldc_w 376
    //   1983: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   1986: invokestatic 379	com/dynamixsoftware/printershare/App:getVersion	()Ljava/lang/String;
    //   1989: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   1992: ldc_w 381
    //   1995: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   1998: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   2001: invokevirtual 385	java/io/PrintStream:println	(Ljava/lang/String;)V
    //   2004: aload 53
    //   2006: new 155	java/lang/StringBuilder
    //   2009: dup
    //   2010: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   2013: ldc_w 387
    //   2016: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2019: aload 41
    //   2021: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2024: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   2027: invokevirtual 385	java/io/PrintStream:println	(Ljava/lang/String;)V
    //   2030: aload 53
    //   2032: new 155	java/lang/StringBuilder
    //   2035: dup
    //   2036: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   2039: ldc_w 389
    //   2042: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2045: aload 47
    //   2047: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2050: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   2053: invokevirtual 385	java/io/PrintStream:println	(Ljava/lang/String;)V
    //   2056: aload 53
    //   2058: new 155	java/lang/StringBuilder
    //   2061: dup
    //   2062: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   2065: ldc_w 391
    //   2068: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2071: iload 48
    //   2073: invokevirtual 394	java/lang/StringBuilder:append	(I)Ljava/lang/StringBuilder;
    //   2076: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   2079: invokevirtual 385	java/io/PrintStream:println	(Ljava/lang/String;)V
    //   2082: aload 41
    //   2084: ldc 40
    //   2086: invokevirtual 249	java/lang/String:endsWith	(Ljava/lang/String;)Z
    //   2089: istore 54
    //   2091: iload 54
    //   2093: ifeq +540 -> 2633
    //   2096: iload 48
    //   2098: sipush 25654
    //   2101: if_icmpne +8 -> 2109
    //   2104: sipush 13924
    //   2107: istore 48
    //   2109: new 396	java/net/URL
    //   2112: dup
    //   2113: new 155	java/lang/StringBuilder
    //   2116: dup
    //   2117: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   2120: ldc_w 398
    //   2123: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2126: aload 51
    //   2128: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2131: ldc_w 400
    //   2134: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2137: iload 48
    //   2139: invokevirtual 394	java/lang/StringBuilder:append	(I)Ljava/lang/StringBuilder;
    //   2142: ldc_w 402
    //   2145: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2148: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   2151: invokespecial 404	java/net/URL:<init>	(Ljava/lang/String;)V
    //   2154: astore 99
    //   2156: aload 99
    //   2158: invokevirtual 408	java/net/URL:openConnection	()Ljava/net/URLConnection;
    //   2161: checkcast 410	java/net/HttpURLConnection
    //   2164: astore 104
    //   2166: aload 104
    //   2168: aload_0
    //   2169: getfield 66	com/dynamixsoftware/printershare/ScanThreadBonjour:timeout	I
    //   2172: invokevirtual 414	java/net/HttpURLConnection:setConnectTimeout	(I)V
    //   2175: aload 104
    //   2177: aload_0
    //   2178: getfield 66	com/dynamixsoftware/printershare/ScanThreadBonjour:timeout	I
    //   2181: invokevirtual 417	java/net/HttpURLConnection:setReadTimeout	(I)V
    //   2184: aload 104
    //   2186: iconst_1
    //   2187: invokevirtual 421	java/net/HttpURLConnection:setDoInput	(Z)V
    //   2190: aload 104
    //   2192: iconst_0
    //   2193: invokevirtual 424	java/net/HttpURLConnection:setDoOutput	(Z)V
    //   2196: aload 104
    //   2198: iconst_0
    //   2199: invokevirtual 427	java/net/HttpURLConnection:setUseCaches	(Z)V
    //   2202: aload 104
    //   2204: ldc_w 429
    //   2207: invokevirtual 432	java/net/HttpURLConnection:setRequestMethod	(Ljava/lang/String;)V
    //   2210: aload 104
    //   2212: invokevirtual 435	java/net/HttpURLConnection:getResponseCode	()I
    //   2215: sipush 200
    //   2218: if_icmpne +402 -> 2620
    //   2221: aload 104
    //   2223: invokevirtual 439	java/net/HttpURLConnection:getInputStream	()Ljava/io/InputStream;
    //   2226: invokestatic 445	com/dynamixsoftware/printershare/data/XmlUtil:getDocument	(Ljava/io/InputStream;)Lorg/w3c/dom/Document;
    //   2229: invokeinterface 451 1 0
    //   2234: ldc_w 452
    //   2237: invokestatic 456	com/dynamixsoftware/printershare/data/XmlUtil:getFirstElement	(Lorg/w3c/dom/Node;Ljava/lang/String;)Lorg/w3c/dom/Element;
    //   2240: astore 105
    //   2242: aload_0
    //   2243: getfield 75	com/dynamixsoftware/printershare/ScanThreadBonjour:printers	Ljava/util/Vector;
    //   2246: ifnull +374 -> 2620
    //   2249: aload 105
    //   2251: ldc_w 458
    //   2254: invokeinterface 464 2 0
    //   2259: astore 106
    //   2261: aload 106
    //   2263: invokeinterface 469 1 0
    //   2268: istore 107
    //   2270: iconst_0
    //   2271: istore 108
    //   2273: aload_1
    //   2274: astore 79
    //   2276: iload 108
    //   2278: iload 107
    //   2280: if_icmpge +337 -> 2617
    //   2283: aload 106
    //   2285: iload 108
    //   2287: invokeinterface 473 2 0
    //   2292: checkcast 460	org/w3c/dom/Element
    //   2295: astore 109
    //   2297: new 349	com/dynamixsoftware/printershare/data/Printer
    //   2300: dup
    //   2301: invokespecial 474	com/dynamixsoftware/printershare/data/Printer:<init>	()V
    //   2304: astore 110
    //   2306: aload 110
    //   2308: aload 109
    //   2310: invokevirtual 478	com/dynamixsoftware/printershare/data/Printer:readFromXml	(Lorg/w3c/dom/Element;)V
    //   2313: aload 110
    //   2315: new 155	java/lang/StringBuilder
    //   2318: dup
    //   2319: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   2322: aload 110
    //   2324: getfield 352	com/dynamixsoftware/printershare/data/Printer:id	Ljava/lang/String;
    //   2327: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2330: ldc 254
    //   2332: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2335: aload 41
    //   2337: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2340: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   2343: putfield 352	com/dynamixsoftware/printershare/data/Printer:id	Ljava/lang/String;
    //   2346: aload 110
    //   2348: iconst_1
    //   2349: putfield 481	com/dynamixsoftware/printershare/data/Printer:online	Z
    //   2352: aload 110
    //   2354: new 155	java/lang/StringBuilder
    //   2357: dup
    //   2358: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   2361: ldc_w 483
    //   2364: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2367: aload 51
    //   2369: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2372: ldc_w 400
    //   2375: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2378: iload 48
    //   2380: invokevirtual 394	java/lang/StringBuilder:append	(I)Ljava/lang/StringBuilder;
    //   2383: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   2386: putfield 486	com/dynamixsoftware/printershare/data/Printer:direct_address	Ljava/lang/String;
    //   2389: aload 110
    //   2391: new 488	com/dynamixsoftware/printershare/data/User
    //   2394: dup
    //   2395: invokespecial 489	com/dynamixsoftware/printershare/data/User:<init>	()V
    //   2398: putfield 493	com/dynamixsoftware/printershare/data/Printer:owner	Lcom/dynamixsoftware/printershare/data/User;
    //   2401: aload 110
    //   2403: getfield 493	com/dynamixsoftware/printershare/data/Printer:owner	Lcom/dynamixsoftware/printershare/data/User;
    //   2406: aload 29
    //   2408: putfield 496	com/dynamixsoftware/printershare/data/User:name	Ljava/lang/String;
    //   2411: aload_0
    //   2412: getfield 75	com/dynamixsoftware/printershare/ScanThreadBonjour:printers	Ljava/util/Vector;
    //   2415: astore 111
    //   2417: aload 111
    //   2419: monitorenter
    //   2420: aload_0
    //   2421: getfield 75	com/dynamixsoftware/printershare/ScanThreadBonjour:printers	Ljava/util/Vector;
    //   2424: aload 110
    //   2426: invokevirtual 497	java/util/Vector:add	(Ljava/lang/Object;)Z
    //   2429: pop
    //   2430: aload 111
    //   2432: monitorexit
    //   2433: new 110	android/os/Message
    //   2436: dup
    //   2437: invokespecial 111	android/os/Message:<init>	()V
    //   2440: astore_1
    //   2441: aload_1
    //   2442: iconst_2
    //   2443: putfield 114	android/os/Message:what	I
    //   2446: aload_0
    //   2447: getfield 68	com/dynamixsoftware/printershare/ScanThreadBonjour:status	Landroid/os/Handler;
    //   2450: aload_1
    //   2451: invokevirtual 120	android/os/Handler:sendMessage	(Landroid/os/Message;)Z
    //   2454: pop
    //   2455: aload_0
    //   2456: getfield 70	com/dynamixsoftware/printershare/ScanThreadBonjour:rq_pid	Ljava/lang/String;
    //   2459: ifnull +22 -> 2481
    //   2462: aload_0
    //   2463: getfield 70	com/dynamixsoftware/printershare/ScanThreadBonjour:rq_pid	Ljava/lang/String;
    //   2466: aload 110
    //   2468: getfield 352	com/dynamixsoftware/printershare/data/Printer:id	Ljava/lang/String;
    //   2471: invokevirtual 252	java/lang/String:equals	(Ljava/lang/Object;)Z
    //   2474: ifeq +7 -> 2481
    //   2477: aload_0
    //   2478: invokevirtual 499	com/dynamixsoftware/printershare/ScanThreadBonjour:destroy	()V
    //   2481: iinc 108 1
    //   2484: aload_1
    //   2485: astore 79
    //   2487: goto -211 -> 2276
    //   2490: astore 112
    //   2492: aload 111
    //   2494: monitorexit
    //   2495: aload 112
    //   2497: athrow
    //   2498: astore 100
    //   2500: aload 79
    //   2502: astore_1
    //   2503: aload 100
    //   2505: invokevirtual 149	java/lang/Exception:printStackTrace	()V
    //   2508: aload 100
    //   2510: invokestatic 153	com/dynamixsoftware/printershare/App:reportThrowable	(Ljava/lang/Throwable;)V
    //   2513: iload 30
    //   2515: ifeq -1867 -> 648
    //   2518: aload_0
    //   2519: getfield 64	com/dynamixsoftware/printershare/ScanThreadBonjour:context	Landroid/content/Context;
    //   2522: invokestatic 326	android/preference/PreferenceManager:getDefaultSharedPreferences	(Landroid/content/Context;)Landroid/content/SharedPreferences;
    //   2525: astore 102
    //   2527: aload 102
    //   2529: new 155	java/lang/StringBuilder
    //   2532: dup
    //   2533: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   2536: ldc_w 328
    //   2539: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2542: aload 29
    //   2544: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2547: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   2550: iconst_0
    //   2551: invokeinterface 334 3 0
    //   2556: ifne -1908 -> 648
    //   2559: aload 102
    //   2561: invokeinterface 338 1 0
    //   2566: new 155	java/lang/StringBuilder
    //   2569: dup
    //   2570: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   2573: ldc_w 328
    //   2576: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2579: aload 29
    //   2581: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2584: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   2587: iconst_1
    //   2588: invokeinterface 344 3 0
    //   2593: invokeinterface 347 1 0
    //   2598: pop
    //   2599: goto -1951 -> 648
    //   2602: astore 101
    //   2604: aload 101
    //   2606: invokevirtual 149	java/lang/Exception:printStackTrace	()V
    //   2609: aload 101
    //   2611: invokestatic 153	com/dynamixsoftware/printershare/App:reportThrowable	(Ljava/lang/Throwable;)V
    //   2614: goto -1966 -> 648
    //   2617: aload 79
    //   2619: astore_1
    //   2620: aload 104
    //   2622: invokevirtual 502	java/net/HttpURLConnection:disconnect	()V
    //   2625: goto -112 -> 2513
    //   2628: astore 100
    //   2630: goto -127 -> 2503
    //   2633: aload 53
    //   2635: new 155	java/lang/StringBuilder
    //   2638: dup
    //   2639: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   2642: ldc_w 504
    //   2645: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2648: aload 50
    //   2650: invokevirtual 277	com/dynamixsoftware/printershare/mdns/DnsRecordText:getName	()Ljava/lang/String;
    //   2653: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2656: ldc_w 506
    //   2659: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2662: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   2665: invokevirtual 385	java/io/PrintStream:println	(Ljava/lang/String;)V
    //   2668: ldc_w 508
    //   2671: astore 55
    //   2673: ldc_w 508
    //   2676: astore 56
    //   2678: ldc_w 508
    //   2681: astore 57
    //   2683: ldc_w 508
    //   2686: astore 58
    //   2688: new 171	java/util/Hashtable
    //   2691: dup
    //   2692: invokespecial 172	java/util/Hashtable:<init>	()V
    //   2695: astore 59
    //   2697: aload 50
    //   2699: invokevirtual 512	com/dynamixsoftware/printershare/mdns/DnsRecordText:getText	()[B
    //   2702: astore 60
    //   2704: aload 60
    //   2706: ifnull +43 -> 2749
    //   2709: iconst_0
    //   2710: istore 89
    //   2712: aload 60
    //   2714: arraylength
    //   2715: istore 90
    //   2717: iload 89
    //   2719: iload 90
    //   2721: if_icmpge +28 -> 2749
    //   2724: iload 89
    //   2726: iconst_1
    //   2727: iadd
    //   2728: istore 91
    //   2730: sipush 255
    //   2733: aload 60
    //   2735: iload 89
    //   2737: baload
    //   2738: iand
    //   2739: istore 92
    //   2741: iload 91
    //   2743: aload 60
    //   2745: arraylength
    //   2746: if_icmplt +380 -> 3126
    //   2749: aload 53
    //   2751: ldc_w 514
    //   2754: invokevirtual 385	java/io/PrintStream:println	(Ljava/lang/String;)V
    //   2757: aload 58
    //   2759: invokevirtual 517	java/lang/String:toLowerCase	()Ljava/lang/String;
    //   2762: astore 61
    //   2764: aload 61
    //   2766: ldc_w 519
    //   2769: invokevirtual 258	java/lang/String:indexOf	(Ljava/lang/String;)I
    //   2772: ifge +1694 -> 4466
    //   2775: aload 61
    //   2777: ldc_w 521
    //   2780: invokevirtual 258	java/lang/String:indexOf	(Ljava/lang/String;)I
    //   2783: ifge +1683 -> 4466
    //   2786: aload 61
    //   2788: ldc_w 523
    //   2791: invokevirtual 258	java/lang/String:indexOf	(Ljava/lang/String;)I
    //   2794: ifge +1672 -> 4466
    //   2797: aload 61
    //   2799: ldc_w 525
    //   2802: invokevirtual 258	java/lang/String:indexOf	(Ljava/lang/String;)I
    //   2805: ifge +1661 -> 4466
    //   2808: aload 61
    //   2810: ldc_w 527
    //   2813: invokevirtual 258	java/lang/String:indexOf	(Ljava/lang/String;)I
    //   2816: ifge +1650 -> 4466
    //   2819: aload 61
    //   2821: ldc_w 529
    //   2824: invokevirtual 258	java/lang/String:indexOf	(Ljava/lang/String;)I
    //   2827: iflt +6 -> 2833
    //   2830: goto +1636 -> 4466
    //   2833: aload 55
    //   2835: ldc_w 531
    //   2838: invokevirtual 534	java/lang/String:startsWith	(Ljava/lang/String;)Z
    //   2841: ifne +26 -> 2867
    //   2844: new 155	java/lang/StringBuilder
    //   2847: dup
    //   2848: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   2851: ldc_w 531
    //   2854: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2857: aload 55
    //   2859: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2862: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   2865: astore 55
    //   2867: aload 41
    //   2869: ldc_w 536
    //   2872: invokevirtual 258	java/lang/String:indexOf	(Ljava/lang/String;)I
    //   2875: ifle +473 -> 3348
    //   2878: new 155	java/lang/StringBuilder
    //   2881: dup
    //   2882: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   2885: ldc_w 538
    //   2888: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2891: aload 51
    //   2893: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2896: ldc_w 400
    //   2899: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2902: iload 48
    //   2904: invokevirtual 394	java/lang/StringBuilder:append	(I)Ljava/lang/StringBuilder;
    //   2907: aload 55
    //   2909: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   2912: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   2915: astore 66
    //   2917: new 349	com/dynamixsoftware/printershare/data/Printer
    //   2920: dup
    //   2921: invokespecial 474	com/dynamixsoftware/printershare/data/Printer:<init>	()V
    //   2924: astore 67
    //   2926: aload 67
    //   2928: new 488	com/dynamixsoftware/printershare/data/User
    //   2931: dup
    //   2932: invokespecial 489	com/dynamixsoftware/printershare/data/User:<init>	()V
    //   2935: putfield 493	com/dynamixsoftware/printershare/data/Printer:owner	Lcom/dynamixsoftware/printershare/data/User;
    //   2938: aload 67
    //   2940: aload 41
    //   2942: putfield 352	com/dynamixsoftware/printershare/data/Printer:id	Ljava/lang/String;
    //   2945: aload 67
    //   2947: iconst_1
    //   2948: putfield 481	com/dynamixsoftware/printershare/data/Printer:online	Z
    //   2951: aload 67
    //   2953: aload 66
    //   2955: putfield 486	com/dynamixsoftware/printershare/data/Printer:direct_address	Ljava/lang/String;
    //   2958: aload 41
    //   2960: ldc_w 536
    //   2963: invokevirtual 258	java/lang/String:indexOf	(Ljava/lang/String;)I
    //   2966: istore 68
    //   2968: iload 68
    //   2970: ifge +13 -> 2983
    //   2973: aload 41
    //   2975: ldc_w 540
    //   2978: invokevirtual 258	java/lang/String:indexOf	(Ljava/lang/String;)I
    //   2981: istore 68
    //   2983: iload 68
    //   2985: ifge +13 -> 2998
    //   2988: aload 41
    //   2990: ldc_w 542
    //   2993: invokevirtual 258	java/lang/String:indexOf	(Ljava/lang/String;)I
    //   2996: istore 68
    //   2998: iload 68
    //   3000: ifge +17 -> 3017
    //   3003: aload 41
    //   3005: ldc_w 544
    //   3008: invokevirtual 258	java/lang/String:indexOf	(Ljava/lang/String;)I
    //   3011: istore 69
    //   3013: iload 69
    //   3015: istore 68
    //   3017: iload 68
    //   3019: ifge +586 -> 3605
    //   3022: iload 30
    //   3024: ifeq -2376 -> 648
    //   3027: aload_0
    //   3028: getfield 64	com/dynamixsoftware/printershare/ScanThreadBonjour:context	Landroid/content/Context;
    //   3031: invokestatic 326	android/preference/PreferenceManager:getDefaultSharedPreferences	(Landroid/content/Context;)Landroid/content/SharedPreferences;
    //   3034: astore 87
    //   3036: aload 87
    //   3038: new 155	java/lang/StringBuilder
    //   3041: dup
    //   3042: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   3045: ldc_w 328
    //   3048: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3051: aload 29
    //   3053: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3056: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   3059: iconst_0
    //   3060: invokeinterface 334 3 0
    //   3065: ifne -2417 -> 648
    //   3068: aload 87
    //   3070: invokeinterface 338 1 0
    //   3075: new 155	java/lang/StringBuilder
    //   3078: dup
    //   3079: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   3082: ldc_w 328
    //   3085: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3088: aload 29
    //   3090: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3093: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   3096: iconst_1
    //   3097: invokeinterface 344 3 0
    //   3102: invokeinterface 347 1 0
    //   3107: pop
    //   3108: goto -2460 -> 648
    //   3111: astore 86
    //   3113: aload 86
    //   3115: invokevirtual 149	java/lang/Exception:printStackTrace	()V
    //   3118: aload 86
    //   3120: invokestatic 153	com/dynamixsoftware/printershare/App:reportThrowable	(Ljava/lang/Throwable;)V
    //   3123: goto -2475 -> 648
    //   3126: iload 91
    //   3128: iload 92
    //   3130: iadd
    //   3131: istore 93
    //   3133: iload 93
    //   3135: aload 60
    //   3137: arraylength
    //   3138: if_icmple +11 -> 3149
    //   3141: aload 60
    //   3143: arraylength
    //   3144: iload 91
    //   3146: isub
    //   3147: istore 92
    //   3149: new 30	java/lang/String
    //   3152: dup
    //   3153: aload 60
    //   3155: iload 91
    //   3157: iload 92
    //   3159: ldc_w 546
    //   3162: invokespecial 549	java/lang/String:<init>	([BIILjava/lang/String;)V
    //   3165: astore 94
    //   3167: aload 94
    //   3169: ldc_w 551
    //   3172: invokevirtual 258	java/lang/String:indexOf	(Ljava/lang/String;)I
    //   3175: istore 95
    //   3177: iload 95
    //   3179: ifge +79 -> 3258
    //   3182: aload 94
    //   3184: astore 96
    //   3186: goto +1288 -> 4474
    //   3189: aload 53
    //   3191: new 155	java/lang/StringBuilder
    //   3194: dup
    //   3195: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   3198: aload 96
    //   3200: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3203: ldc_w 551
    //   3206: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3209: aload 97
    //   3211: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3214: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   3217: invokevirtual 385	java/io/PrintStream:println	(Ljava/lang/String;)V
    //   3220: ldc_w 553
    //   3223: aload 96
    //   3225: invokevirtual 252	java/lang/String:equals	(Ljava/lang/Object;)Z
    //   3228: ifeq +57 -> 3285
    //   3231: aload 97
    //   3233: invokevirtual 556	java/lang/String:trim	()Ljava/lang/String;
    //   3236: astore 55
    //   3238: aload 59
    //   3240: aload 96
    //   3242: aload 97
    //   3244: invokevirtual 266	java/util/Hashtable:put	(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    //   3247: pop
    //   3248: iload 91
    //   3250: iload 92
    //   3252: iadd
    //   3253: istore 89
    //   3255: goto -543 -> 2712
    //   3258: aload 94
    //   3260: iconst_0
    //   3261: iload 95
    //   3263: invokevirtual 369	java/lang/String:substring	(II)Ljava/lang/String;
    //   3266: astore 96
    //   3268: goto +1206 -> 4474
    //   3271: aload 94
    //   3273: iload 95
    //   3275: iconst_1
    //   3276: iadd
    //   3277: invokevirtual 262	java/lang/String:substring	(I)Ljava/lang/String;
    //   3280: astore 97
    //   3282: goto -93 -> 3189
    //   3285: ldc_w 558
    //   3288: aload 96
    //   3290: invokevirtual 252	java/lang/String:equals	(Ljava/lang/Object;)Z
    //   3293: ifeq +13 -> 3306
    //   3296: aload 97
    //   3298: invokevirtual 556	java/lang/String:trim	()Ljava/lang/String;
    //   3301: astore 56
    //   3303: goto -65 -> 3238
    //   3306: ldc_w 560
    //   3309: aload 96
    //   3311: invokevirtual 252	java/lang/String:equals	(Ljava/lang/Object;)Z
    //   3314: ifeq +13 -> 3327
    //   3317: aload 97
    //   3319: invokevirtual 556	java/lang/String:trim	()Ljava/lang/String;
    //   3322: astore 57
    //   3324: goto -86 -> 3238
    //   3327: ldc_w 562
    //   3330: aload 96
    //   3332: invokevirtual 252	java/lang/String:equals	(Ljava/lang/Object;)Z
    //   3335: ifeq -97 -> 3238
    //   3338: aload 97
    //   3340: invokevirtual 556	java/lang/String:trim	()Ljava/lang/String;
    //   3343: astore 58
    //   3345: goto -107 -> 3238
    //   3348: aload 41
    //   3350: ldc_w 540
    //   3353: invokevirtual 258	java/lang/String:indexOf	(Ljava/lang/String;)I
    //   3356: ifle +40 -> 3396
    //   3359: new 155	java/lang/StringBuilder
    //   3362: dup
    //   3363: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   3366: ldc_w 564
    //   3369: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3372: aload 51
    //   3374: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3377: ldc_w 400
    //   3380: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3383: iload 48
    //   3385: invokevirtual 394	java/lang/StringBuilder:append	(I)Ljava/lang/StringBuilder;
    //   3388: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   3391: astore 66
    //   3393: goto -476 -> 2917
    //   3396: aload 41
    //   3398: ldc_w 542
    //   3401: invokevirtual 258	java/lang/String:indexOf	(Ljava/lang/String;)I
    //   3404: ifle +45 -> 3449
    //   3407: new 155	java/lang/StringBuilder
    //   3410: dup
    //   3411: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   3414: ldc_w 566
    //   3417: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3420: aload 51
    //   3422: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3425: ldc_w 400
    //   3428: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3431: iload 48
    //   3433: invokevirtual 394	java/lang/StringBuilder:append	(I)Ljava/lang/StringBuilder;
    //   3436: aload 55
    //   3438: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3441: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   3444: astore 66
    //   3446: goto -529 -> 2917
    //   3449: aload 41
    //   3451: ldc_w 544
    //   3454: invokevirtual 258	java/lang/String:indexOf	(Ljava/lang/String;)I
    //   3457: ifle +44 -> 3501
    //   3460: new 155	java/lang/StringBuilder
    //   3463: dup
    //   3464: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   3467: ldc_w 568
    //   3470: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3473: aload 51
    //   3475: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3478: ldc_w 400
    //   3481: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3484: iload 48
    //   3486: invokevirtual 394	java/lang/StringBuilder:append	(I)Ljava/lang/StringBuilder;
    //   3489: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   3492: astore 65
    //   3494: aload 65
    //   3496: astore 66
    //   3498: goto -581 -> 2917
    //   3501: iload 30
    //   3503: ifeq -2855 -> 648
    //   3506: aload_0
    //   3507: getfield 64	com/dynamixsoftware/printershare/ScanThreadBonjour:context	Landroid/content/Context;
    //   3510: invokestatic 326	android/preference/PreferenceManager:getDefaultSharedPreferences	(Landroid/content/Context;)Landroid/content/SharedPreferences;
    //   3513: astore 63
    //   3515: aload 63
    //   3517: new 155	java/lang/StringBuilder
    //   3520: dup
    //   3521: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   3524: ldc_w 328
    //   3527: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3530: aload 29
    //   3532: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3535: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   3538: iconst_0
    //   3539: invokeinterface 334 3 0
    //   3544: ifne -2896 -> 648
    //   3547: aload 63
    //   3549: invokeinterface 338 1 0
    //   3554: new 155	java/lang/StringBuilder
    //   3557: dup
    //   3558: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   3561: ldc_w 328
    //   3564: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3567: aload 29
    //   3569: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3572: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   3575: iconst_1
    //   3576: invokeinterface 344 3 0
    //   3581: invokeinterface 347 1 0
    //   3586: pop
    //   3587: goto -2939 -> 648
    //   3590: astore 62
    //   3592: aload 62
    //   3594: invokevirtual 149	java/lang/Exception:printStackTrace	()V
    //   3597: aload 62
    //   3599: invokestatic 153	com/dynamixsoftware/printershare/App:reportThrowable	(Ljava/lang/Throwable;)V
    //   3602: goto -2954 -> 648
    //   3605: aload 41
    //   3607: iconst_0
    //   3608: iload 68
    //   3610: invokevirtual 369	java/lang/String:substring	(II)Ljava/lang/String;
    //   3613: invokevirtual 556	java/lang/String:trim	()Ljava/lang/String;
    //   3616: astore 70
    //   3618: aload 70
    //   3620: ldc 254
    //   3622: invokevirtual 258	java/lang/String:indexOf	(Ljava/lang/String;)I
    //   3625: istore 71
    //   3627: iload 71
    //   3629: ifle +471 -> 4100
    //   3632: aload 70
    //   3634: iconst_0
    //   3635: iload 71
    //   3637: invokevirtual 369	java/lang/String:substring	(II)Ljava/lang/String;
    //   3640: invokevirtual 556	java/lang/String:trim	()Ljava/lang/String;
    //   3643: astore 56
    //   3645: iload 71
    //   3647: iconst_1
    //   3648: iadd
    //   3649: istore 72
    //   3651: aload 70
    //   3653: iload 72
    //   3655: invokevirtual 262	java/lang/String:substring	(I)Ljava/lang/String;
    //   3658: invokevirtual 556	java/lang/String:trim	()Ljava/lang/String;
    //   3661: astore 70
    //   3663: aload 67
    //   3665: getfield 493	com/dynamixsoftware/printershare/data/Printer:owner	Lcom/dynamixsoftware/printershare/data/User;
    //   3668: aload 70
    //   3670: putfield 496	com/dynamixsoftware/printershare/data/User:name	Ljava/lang/String;
    //   3673: ldc_w 508
    //   3676: aload 56
    //   3678: invokevirtual 252	java/lang/String:equals	(Ljava/lang/Object;)Z
    //   3681: ifeq +7 -> 3688
    //   3684: aload 58
    //   3686: astore 56
    //   3688: ldc_w 508
    //   3691: aload 56
    //   3693: invokevirtual 252	java/lang/String:equals	(Ljava/lang/Object;)Z
    //   3696: ifeq +7 -> 3703
    //   3699: aload 70
    //   3701: astore 56
    //   3703: aload 56
    //   3705: invokestatic 571	com/dynamixsoftware/printershare/App:clearPrinterModelName	(Ljava/lang/String;)Ljava/lang/String;
    //   3708: astore 73
    //   3710: ldc_w 508
    //   3713: aload 58
    //   3715: invokevirtual 252	java/lang/String:equals	(Ljava/lang/Object;)Z
    //   3718: ifne +769 -> 4487
    //   3721: aload 73
    //   3723: aload 58
    //   3725: invokevirtual 249	java/lang/String:endsWith	(Ljava/lang/String;)Z
    //   3728: ifeq +6 -> 3734
    //   3731: goto +756 -> 4487
    //   3734: aload 58
    //   3736: invokestatic 571	com/dynamixsoftware/printershare/App:clearPrinterModelName	(Ljava/lang/String;)Ljava/lang/String;
    //   3739: astore 74
    //   3741: aload 67
    //   3743: aload 73
    //   3745: putfield 574	com/dynamixsoftware/printershare/data/Printer:title	Ljava/lang/String;
    //   3748: aload 74
    //   3750: ifnull +601 -> 4351
    //   3753: aload 74
    //   3755: astore 75
    //   3757: aload 67
    //   3759: aload 75
    //   3761: putfield 577	com/dynamixsoftware/printershare/data/Printer:model	Ljava/lang/String;
    //   3764: aload 67
    //   3766: aload 57
    //   3768: putfield 580	com/dynamixsoftware/printershare/data/Printer:location	Ljava/lang/String;
    //   3771: aload 67
    //   3773: aload 59
    //   3775: putfield 584	com/dynamixsoftware/printershare/data/Printer:capabilities	Ljava/util/Hashtable;
    //   3778: aload 53
    //   3780: new 155	java/lang/StringBuilder
    //   3783: dup
    //   3784: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   3787: ldc_w 586
    //   3790: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3793: aload 67
    //   3795: getfield 493	com/dynamixsoftware/printershare/data/Printer:owner	Lcom/dynamixsoftware/printershare/data/User;
    //   3798: getfield 496	com/dynamixsoftware/printershare/data/User:name	Ljava/lang/String;
    //   3801: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3804: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   3807: invokevirtual 385	java/io/PrintStream:println	(Ljava/lang/String;)V
    //   3810: aload 53
    //   3812: new 155	java/lang/StringBuilder
    //   3815: dup
    //   3816: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   3819: ldc_w 588
    //   3822: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3825: aload 73
    //   3827: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3830: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   3833: invokevirtual 385	java/io/PrintStream:println	(Ljava/lang/String;)V
    //   3836: aload 53
    //   3838: new 155	java/lang/StringBuilder
    //   3841: dup
    //   3842: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   3845: ldc_w 590
    //   3848: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3851: aload 74
    //   3853: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3856: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   3859: invokevirtual 385	java/io/PrintStream:println	(Ljava/lang/String;)V
    //   3862: aload 53
    //   3864: new 155	java/lang/StringBuilder
    //   3867: dup
    //   3868: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   3871: ldc_w 592
    //   3874: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3877: aload 67
    //   3879: getfield 352	com/dynamixsoftware/printershare/data/Printer:id	Ljava/lang/String;
    //   3882: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3885: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   3888: invokevirtual 385	java/io/PrintStream:println	(Ljava/lang/String;)V
    //   3891: aload 53
    //   3893: new 155	java/lang/StringBuilder
    //   3896: dup
    //   3897: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   3900: ldc_w 594
    //   3903: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3906: aload 67
    //   3908: getfield 486	com/dynamixsoftware/printershare/data/Printer:direct_address	Ljava/lang/String;
    //   3911: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   3914: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   3917: invokevirtual 385	java/io/PrintStream:println	(Ljava/lang/String;)V
    //   3920: aload_0
    //   3921: getfield 75	com/dynamixsoftware/printershare/ScanThreadBonjour:printers	Ljava/util/Vector;
    //   3924: astore 76
    //   3926: aload 76
    //   3928: monitorenter
    //   3929: aload_0
    //   3930: getfield 75	com/dynamixsoftware/printershare/ScanThreadBonjour:printers	Ljava/util/Vector;
    //   3933: aload 67
    //   3935: invokevirtual 497	java/util/Vector:add	(Ljava/lang/Object;)Z
    //   3938: pop
    //   3939: aload 76
    //   3941: monitorexit
    //   3942: new 110	android/os/Message
    //   3945: dup
    //   3946: invokespecial 111	android/os/Message:<init>	()V
    //   3949: astore 79
    //   3951: aload 79
    //   3953: iconst_2
    //   3954: putfield 114	android/os/Message:what	I
    //   3957: aload_0
    //   3958: getfield 68	com/dynamixsoftware/printershare/ScanThreadBonjour:status	Landroid/os/Handler;
    //   3961: aload 79
    //   3963: invokevirtual 120	android/os/Handler:sendMessage	(Landroid/os/Message;)Z
    //   3966: pop
    //   3967: aload_0
    //   3968: getfield 70	com/dynamixsoftware/printershare/ScanThreadBonjour:rq_pid	Ljava/lang/String;
    //   3971: ifnull +22 -> 3993
    //   3974: aload_0
    //   3975: getfield 70	com/dynamixsoftware/printershare/ScanThreadBonjour:rq_pid	Ljava/lang/String;
    //   3978: aload 67
    //   3980: getfield 352	com/dynamixsoftware/printershare/data/Printer:id	Ljava/lang/String;
    //   3983: invokevirtual 252	java/lang/String:equals	(Ljava/lang/Object;)Z
    //   3986: ifeq +7 -> 3993
    //   3989: aload_0
    //   3990: invokevirtual 499	com/dynamixsoftware/printershare/ScanThreadBonjour:destroy	()V
    //   3993: aload 79
    //   3995: astore_1
    //   3996: iload 30
    //   3998: ifeq -3350 -> 648
    //   4001: aload_0
    //   4002: getfield 64	com/dynamixsoftware/printershare/ScanThreadBonjour:context	Landroid/content/Context;
    //   4005: invokestatic 326	android/preference/PreferenceManager:getDefaultSharedPreferences	(Landroid/content/Context;)Landroid/content/SharedPreferences;
    //   4008: astore 83
    //   4010: aload 83
    //   4012: new 155	java/lang/StringBuilder
    //   4015: dup
    //   4016: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   4019: ldc_w 328
    //   4022: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   4025: aload 29
    //   4027: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   4030: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   4033: iconst_0
    //   4034: invokeinterface 334 3 0
    //   4039: ifne -3391 -> 648
    //   4042: aload 83
    //   4044: invokeinterface 338 1 0
    //   4049: new 155	java/lang/StringBuilder
    //   4052: dup
    //   4053: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   4056: ldc_w 328
    //   4059: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   4062: aload 29
    //   4064: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   4067: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   4070: iconst_1
    //   4071: invokeinterface 344 3 0
    //   4076: invokeinterface 347 1 0
    //   4081: pop
    //   4082: goto -3434 -> 648
    //   4085: astore 82
    //   4087: aload 82
    //   4089: invokevirtual 149	java/lang/Exception:printStackTrace	()V
    //   4092: aload 82
    //   4094: invokestatic 153	com/dynamixsoftware/printershare/App:reportThrowable	(Ljava/lang/Throwable;)V
    //   4097: goto -3449 -> 648
    //   4100: aload 59
    //   4102: ldc_w 596
    //   4105: invokevirtual 284	java/util/Hashtable:get	(Ljava/lang/Object;)Ljava/lang/Object;
    //   4108: checkcast 30	java/lang/String
    //   4111: astore 85
    //   4113: aload 85
    //   4115: ifnonnull +132 -> 4247
    //   4118: aload 67
    //   4120: getfield 493	com/dynamixsoftware/printershare/data/Printer:owner	Lcom/dynamixsoftware/printershare/data/User;
    //   4123: aload 29
    //   4125: putfield 496	com/dynamixsoftware/printershare/data/User:name	Ljava/lang/String;
    //   4128: goto -455 -> 3673
    //   4131: astore 36
    //   4133: aload 36
    //   4135: invokevirtual 149	java/lang/Exception:printStackTrace	()V
    //   4138: aload 36
    //   4140: invokestatic 153	com/dynamixsoftware/printershare/App:reportThrowable	(Ljava/lang/Throwable;)V
    //   4143: iload 30
    //   4145: ifeq -3497 -> 648
    //   4148: aload_0
    //   4149: getfield 64	com/dynamixsoftware/printershare/ScanThreadBonjour:context	Landroid/content/Context;
    //   4152: invokestatic 326	android/preference/PreferenceManager:getDefaultSharedPreferences	(Landroid/content/Context;)Landroid/content/SharedPreferences;
    //   4155: astore 38
    //   4157: aload 38
    //   4159: new 155	java/lang/StringBuilder
    //   4162: dup
    //   4163: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   4166: ldc_w 328
    //   4169: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   4172: aload 29
    //   4174: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   4177: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   4180: iconst_0
    //   4181: invokeinterface 334 3 0
    //   4186: ifne -3538 -> 648
    //   4189: aload 38
    //   4191: invokeinterface 338 1 0
    //   4196: new 155	java/lang/StringBuilder
    //   4199: dup
    //   4200: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   4203: ldc_w 328
    //   4206: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   4209: aload 29
    //   4211: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   4214: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   4217: iconst_1
    //   4218: invokeinterface 344 3 0
    //   4223: invokeinterface 347 1 0
    //   4228: pop
    //   4229: goto -3581 -> 648
    //   4232: astore 37
    //   4234: aload 37
    //   4236: invokevirtual 149	java/lang/Exception:printStackTrace	()V
    //   4239: aload 37
    //   4241: invokestatic 153	com/dynamixsoftware/printershare/App:reportThrowable	(Ljava/lang/Throwable;)V
    //   4244: goto -3596 -> 648
    //   4247: aload 67
    //   4249: getfield 493	com/dynamixsoftware/printershare/data/Printer:owner	Lcom/dynamixsoftware/printershare/data/User;
    //   4252: aload 85
    //   4254: putfield 496	com/dynamixsoftware/printershare/data/User:name	Ljava/lang/String;
    //   4257: goto -584 -> 3673
    //   4260: astore 32
    //   4262: iload 30
    //   4264: ifeq +84 -> 4348
    //   4267: aload_0
    //   4268: getfield 64	com/dynamixsoftware/printershare/ScanThreadBonjour:context	Landroid/content/Context;
    //   4271: invokestatic 326	android/preference/PreferenceManager:getDefaultSharedPreferences	(Landroid/content/Context;)Landroid/content/SharedPreferences;
    //   4274: astore 34
    //   4276: aload 34
    //   4278: new 155	java/lang/StringBuilder
    //   4281: dup
    //   4282: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   4285: ldc_w 328
    //   4288: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   4291: aload 29
    //   4293: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   4296: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   4299: iconst_0
    //   4300: invokeinterface 334 3 0
    //   4305: ifne +43 -> 4348
    //   4308: aload 34
    //   4310: invokeinterface 338 1 0
    //   4315: new 155	java/lang/StringBuilder
    //   4318: dup
    //   4319: invokespecial 156	java/lang/StringBuilder:<init>	()V
    //   4322: ldc_w 328
    //   4325: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   4328: aload 29
    //   4330: invokevirtual 162	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   4333: invokevirtual 169	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   4336: iconst_1
    //   4337: invokeinterface 344 3 0
    //   4342: invokeinterface 347 1 0
    //   4347: pop
    //   4348: aload 32
    //   4350: athrow
    //   4351: ldc_w 508
    //   4354: astore 75
    //   4356: goto -599 -> 3757
    //   4359: astore 77
    //   4361: aload 76
    //   4363: monitorexit
    //   4364: aload 77
    //   4366: athrow
    //   4367: astore 33
    //   4369: aload 33
    //   4371: invokevirtual 149	java/lang/Exception:printStackTrace	()V
    //   4374: aload 33
    //   4376: invokestatic 153	com/dynamixsoftware/printershare/App:reportThrowable	(Ljava/lang/Throwable;)V
    //   4379: goto -31 -> 4348
    //   4382: new 110	android/os/Message
    //   4385: dup
    //   4386: invokespecial 111	android/os/Message:<init>	()V
    //   4389: astore 164
    //   4391: aload 164
    //   4393: iconst_4
    //   4394: putfield 114	android/os/Message:what	I
    //   4397: aload 164
    //   4399: iconst_0
    //   4400: putfield 129	android/os/Message:arg1	I
    //   4403: aload_0
    //   4404: getfield 68	com/dynamixsoftware/printershare/ScanThreadBonjour:status	Landroid/os/Handler;
    //   4407: aload 164
    //   4409: invokevirtual 120	android/os/Handler:sendMessage	(Landroid/os/Message;)Z
    //   4412: pop
    //   4413: return
    //   4414: astore 32
    //   4416: aload 79
    //   4418: pop
    //   4419: goto -157 -> 4262
    //   4422: astore 36
    //   4424: aload 79
    //   4426: astore_1
    //   4427: goto -294 -> 4133
    //   4430: astore 166
    //   4432: goto -3898 -> 534
    //   4435: astore 4
    //   4437: goto -4014 -> 423
    //   4440: astore 5
    //   4442: aload 168
    //   4444: astore_1
    //   4445: goto -4268 -> 177
    //   4448: iinc 141 1
    //   4451: goto -3668 -> 783
    //   4454: iinc 158 1
    //   4457: goto -3580 -> 877
    //   4460: iinc 153 1
    //   4463: goto -3462 -> 1001
    //   4466: ldc_w 508
    //   4469: astore 58
    //   4471: goto -1638 -> 2833
    //   4474: iload 95
    //   4476: ifge -1205 -> 3271
    //   4479: ldc_w 508
    //   4482: astore 97
    //   4484: goto -1295 -> 3189
    //   4487: aload 73
    //   4489: astore 58
    //   4491: goto -757 -> 3734
    // Local variable table:
    //   start	length	slot	name	signature
    //   0	4494	0	this	ScanThreadBonjour
    //   7	4438	1	localObject1	Object
    //   26	398	3	arrayOfBoolean1	boolean[]
    //   421	5	4	localObject2	Object
    //   4435	1	4	localObject3	Object
    //   175	33	5	localException1	Exception
    //   4440	1	5	localException2	Exception
    //   205	212	6	str1	String
    //   226	746	7	localHashtable1	java.util.Hashtable
    //   235	1637	8	localHashtable2	java.util.Hashtable
    //   244	1222	9	localHashtable3	java.util.Hashtable
    //   253	1631	10	localHashtable4	java.util.Hashtable
    //   262	1126	11	localHashSet	java.util.HashSet
    //   275	231	12	arrayOfBoolean2	boolean[]
    //   503	6	13	localObject4	Object
    //   435	272	14	localArrayList	ArrayList
    //   704	6	15	localObject5	Object
    //   451	240	16	i	int
    //   454	44	17	j	int
    //   463	7	18	k	int
    //   487	3	19	bool1	boolean
    //   518	7	20	m	int
    //   541	179	21	arrayOfObject	Object[]
    //   560	185	22	n	int
    //   565	7	23	i1	int
    //   596	807	24	i2	int
    //   603	595	25	localEnumeration1	java.util.Enumeration
    //   646	822	26	localEnumeration2	java.util.Enumeration
    //   662	786	27	arrayOfBoolean3	boolean[]
    //   682	6	28	localObject6	Object
    //   1451	2878	29	localObject7	Object
    //   1454	2809	30	i3	int
    //   1463	498	31	localByteArrayOutputStream	java.io.ByteArrayOutputStream
    //   4260	89	32	localObject8	Object
    //   4414	1	32	localObject9	Object
    //   4367	8	33	localException3	Exception
    //   4274	35	34	localSharedPreferences1	android.content.SharedPreferences
    //   4131	8	36	localException4	Exception
    //   4422	1	36	localException5	Exception
    //   4232	8	37	localException6	Exception
    //   4155	35	38	localSharedPreferences2	android.content.SharedPreferences
    //   1483	382	40	localDnsRecordService1	com.dynamixsoftware.printershare.mdns.DnsRecordService
    //   1490	2116	41	str2	String
    //   1500	3	42	bool2	boolean
    //   1609	243	43	i4	int
    //   1618	14	44	i5	int
    //   1622	10	45	i6	int
    //   1625	121	46	i7	int
    //   1862	184	47	str3	String
    //   1869	1616	48	i8	int
    //   1881	37	49	localDnsRecordAddress1	com.dynamixsoftware.printershare.mdns.DnsRecordAddress
    //   1893	805	50	localDnsRecordText1	com.dynamixsoftware.printershare.mdns.DnsRecordText
    //   1925	1549	51	str4	String
    //   1939	11	52	i9	int
    //   1966	1926	53	localPrintStream	java.io.PrintStream
    //   2089	3	54	bool3	boolean
    //   2671	766	55	str5	String
    //   2676	1028	56	localObject10	Object
    //   2681	1086	57	str6	String
    //   2686	1804	58	localObject11	Object
    //   2695	1406	59	localHashtable5	java.util.Hashtable
    //   2702	452	60	arrayOfByte	byte[]
    //   2762	58	61	str7	String
    //   3590	8	62	localException7	Exception
    //   3513	35	63	localSharedPreferences3	android.content.SharedPreferences
    //   3492	3	65	str8	String
    //   2915	582	66	localObject12	Object
    //   2924	1324	67	localPrinter1	Printer
    //   2966	643	68	i10	int
    //   3011	3	69	i11	int
    //   3616	84	70	str9	String
    //   3625	24	71	i12	int
    //   3649	5	72	i13	int
    //   3708	780	73	str10	String
    //   3739	113	74	str11	String
    //   3755	600	75	str12	String
    //   4359	6	77	localObject13	Object
    //   2274	2151	79	localObject14	Object
    //   4085	8	82	localException8	Exception
    //   4008	35	83	localSharedPreferences4	android.content.SharedPreferences
    //   4111	142	85	str13	String
    //   3111	8	86	localException9	Exception
    //   3034	35	87	localSharedPreferences5	android.content.SharedPreferences
    //   2710	544	89	i14	int
    //   2715	7	90	i15	int
    //   2728	525	91	i16	int
    //   2739	514	92	i17	int
    //   3131	8	93	i18	int
    //   3165	107	94	str14	String
    //   3175	1300	95	i19	int
    //   3184	147	96	str15	String
    //   3209	1274	97	str16	String
    //   2154	3	99	localURL	java.net.URL
    //   2498	11	100	localException10	Exception
    //   2628	1	100	localException11	Exception
    //   2602	8	101	localException12	Exception
    //   2525	35	102	localSharedPreferences6	android.content.SharedPreferences
    //   2164	457	104	localHttpURLConnection	java.net.HttpURLConnection
    //   2240	10	105	localElement1	org.w3c.dom.Element
    //   2259	25	106	localNodeList	org.w3c.dom.NodeList
    //   2268	13	107	i20	int
    //   2271	211	108	i21	int
    //   2295	14	109	localElement2	org.w3c.dom.Element
    //   2304	163	110	localPrinter2	Printer
    //   2490	6	112	localObject15	Object
    //   1836	8	115	localException13	Exception
    //   1761	34	116	localSharedPreferences7	android.content.SharedPreferences
    //   1735	3	118	bool4	boolean
    //   1593	8	119	localException14	Exception
    //   1518	34	120	localSharedPreferences8	android.content.SharedPreferences
    //   1424	8	122	localException15	Exception
    //   619	823	123	arrayOfBoolean4	boolean[]
    //   1439	6	124	localObject16	Object
    //   1207	58	125	str17	String
    //   1219	133	126	localDnsRecordService2	com.dynamixsoftware.printershare.mdns.DnsRecordService
    //   1286	54	127	str18	String
    //   1356	54	128	str19	String
    //   1414	3	130	local4	4
    //   1344	3	132	local3	3
    //   1269	3	134	local2	2
    //   758	8	135	localException16	Exception
    //   578	175	136	arrayOfBoolean5	boolean[]
    //   750	6	137	localObject17	Object
    //   730	44	138	localDnsPacketIn	com.dynamixsoftware.printershare.mdns.DnsPacketIn
    //   737	3	139	bool5	boolean
    //   778	22	140	localList	java.util.List
    //   781	3668	141	i22	int
    //   790	7	142	i23	int
    //   811	321	143	localDnsRecord	com.dynamixsoftware.printershare.mdns.DnsRecord
    //   1136	44	144	localDnsRecordText2	com.dynamixsoftware.printershare.mdns.DnsRecordText
    //   1143	35	145	str20	String
    //   1146	43	146	i24	int
    //   1152	7	147	i25	int
    //   1113	10	149	localDnsRecordAddress2	com.dynamixsoftware.printershare.mdns.DnsRecordAddress
    //   989	111	151	localDnsRecordService3	com.dynamixsoftware.printershare.mdns.DnsRecordService
    //   996	102	152	str21	String
    //   999	3462	153	i26	int
    //   1005	7	154	i27	int
    //   865	111	156	localDnsRecordPointer	com.dynamixsoftware.printershare.mdns.DnsRecordPointer
    //   872	102	157	str22	String
    //   875	3580	158	i28	int
    //   881	7	159	i29	int
    //   304	44	161	localMessage1	android.os.Message
    //   325	14	162	localBundle	android.os.Bundle
    //   4389	19	164	localMessage2	android.os.Message
    //   4430	1	166	localInterruptedException	InterruptedException
    //   32	72	167	localVector3	Vector
    //   54	4389	168	localMessage3	android.os.Message
    //   361	6	170	i30	int
    //   380	12	171	localSocketThread1	SocketThread
    //   403	8	172	localException17	Exception
    //   87	68	174	i31	int
    //   94	7	175	i32	int
    //   113	20	176	localNetworkInterfaceData	App.NetworkInterfaceData
    //   120	3	177	bool6	boolean
    //   137	12	178	localSocketThread2	SocketThread
    //   160	8	179	localException18	Exception
    // Exception table:
    //   from	to	target	type
    //   127	154	160	java/lang/Exception
    //   29	34	175	java/lang/Exception
    //   39	56	175	java/lang/Exception
    //   89	96	175	java/lang/Exception
    //   103	122	175	java/lang/Exception
    //   162	172	175	java/lang/Exception
    //   354	363	175	java/lang/Exception
    //   405	415	175	java/lang/Exception
    //   371	397	403	java/lang/Exception
    //   29	34	421	finally
    //   39	56	421	finally
    //   89	96	421	finally
    //   103	122	421	finally
    //   127	154	421	finally
    //   162	172	421	finally
    //   177	212	421	finally
    //   212	214	421	finally
    //   354	363	421	finally
    //   371	397	421	finally
    //   405	415	421	finally
    //   423	425	421	finally
    //   280	292	503	finally
    //   428	431	503	finally
    //   505	508	503	finally
    //   667	679	682	finally
    //   684	687	682	finally
    //   1447	1450	682	finally
    //   440	450	704	finally
    //   456	465	704	finally
    //   472	489	704	finally
    //   511	520	704	finally
    //   527	534	704	finally
    //   534	553	704	finally
    //   695	701	704	finally
    //   706	709	704	finally
    //   583	595	750	finally
    //   712	715	750	finally
    //   752	755	750	finally
    //   574	583	758	java/lang/Exception
    //   715	739	758	java/lang/Exception
    //   755	758	758	java/lang/Exception
    //   773	780	758	java/lang/Exception
    //   783	792	758	java/lang/Exception
    //   799	860	758	java/lang/Exception
    //   860	874	758	java/lang/Exception
    //   877	883	758	java/lang/Exception
    //   890	971	758	java/lang/Exception
    //   971	981	758	java/lang/Exception
    //   984	998	758	java/lang/Exception
    //   1001	1007	758	java/lang/Exception
    //   1014	1095	758	java/lang/Exception
    //   1095	1105	758	java/lang/Exception
    //   1108	1128	758	java/lang/Exception
    //   1131	1145	758	java/lang/Exception
    //   1148	1154	758	java/lang/Exception
    //   1161	1185	758	java/lang/Exception
    //   615	624	1424	java/lang/Exception
    //   1197	1221	1424	java/lang/Exception
    //   1226	1256	1424	java/lang/Exception
    //   1259	1276	1424	java/lang/Exception
    //   1281	1331	1424	java/lang/Exception
    //   1334	1351	1424	java/lang/Exception
    //   1351	1401	1424	java/lang/Exception
    //   1404	1421	1424	java/lang/Exception
    //   1444	1447	1424	java/lang/Exception
    //   624	636	1439	finally
    //   1194	1197	1439	finally
    //   1441	1444	1439	finally
    //   1511	1590	1593	java/lang/Exception
    //   1754	1833	1836	java/lang/Exception
    //   2420	2433	2490	finally
    //   2492	2495	2490	finally
    //   2283	2420	2498	java/lang/Exception
    //   2433	2441	2498	java/lang/Exception
    //   2495	2498	2498	java/lang/Exception
    //   2518	2599	2602	java/lang/Exception
    //   2109	2270	2628	java/lang/Exception
    //   2441	2481	2628	java/lang/Exception
    //   2620	2625	2628	java/lang/Exception
    //   3027	3108	3111	java/lang/Exception
    //   3506	3587	3590	java/lang/Exception
    //   4001	4082	4085	java/lang/Exception
    //   1465	1502	4131	java/lang/Exception
    //   1611	1620	4131	java/lang/Exception
    //   1634	1737	4131	java/lang/Exception
    //   1857	1895	4131	java/lang/Exception
    //   1917	1927	4131	java/lang/Exception
    //   1931	1941	4131	java/lang/Exception
    //   1946	1956	4131	java/lang/Exception
    //   1956	1968	4131	java/lang/Exception
    //   1971	2091	4131	java/lang/Exception
    //   2503	2513	4131	java/lang/Exception
    //   2633	2668	4131	java/lang/Exception
    //   2688	2704	4131	java/lang/Exception
    //   2712	2717	4131	java/lang/Exception
    //   2730	2749	4131	java/lang/Exception
    //   2749	2830	4131	java/lang/Exception
    //   2833	2867	4131	java/lang/Exception
    //   2867	2917	4131	java/lang/Exception
    //   2917	2968	4131	java/lang/Exception
    //   2973	2983	4131	java/lang/Exception
    //   2988	2998	4131	java/lang/Exception
    //   3003	3013	4131	java/lang/Exception
    //   3133	3149	4131	java/lang/Exception
    //   3149	3177	4131	java/lang/Exception
    //   3189	3238	4131	java/lang/Exception
    //   3238	3248	4131	java/lang/Exception
    //   3258	3268	4131	java/lang/Exception
    //   3271	3282	4131	java/lang/Exception
    //   3285	3303	4131	java/lang/Exception
    //   3306	3324	4131	java/lang/Exception
    //   3327	3345	4131	java/lang/Exception
    //   3348	3393	4131	java/lang/Exception
    //   3396	3446	4131	java/lang/Exception
    //   3449	3494	4131	java/lang/Exception
    //   3605	3627	4131	java/lang/Exception
    //   3632	3645	4131	java/lang/Exception
    //   3651	3673	4131	java/lang/Exception
    //   3673	3684	4131	java/lang/Exception
    //   3688	3699	4131	java/lang/Exception
    //   3703	3731	4131	java/lang/Exception
    //   3734	3748	4131	java/lang/Exception
    //   3757	3929	4131	java/lang/Exception
    //   3942	3951	4131	java/lang/Exception
    //   4100	4113	4131	java/lang/Exception
    //   4118	4128	4131	java/lang/Exception
    //   4247	4257	4131	java/lang/Exception
    //   4364	4367	4131	java/lang/Exception
    //   4148	4229	4232	java/lang/Exception
    //   1465	1502	4260	finally
    //   1611	1620	4260	finally
    //   1634	1737	4260	finally
    //   1857	1895	4260	finally
    //   1917	1927	4260	finally
    //   1931	1941	4260	finally
    //   1946	1956	4260	finally
    //   1956	1968	4260	finally
    //   1971	2091	4260	finally
    //   2109	2270	4260	finally
    //   2441	2481	4260	finally
    //   2503	2513	4260	finally
    //   2620	2625	4260	finally
    //   2633	2668	4260	finally
    //   2688	2704	4260	finally
    //   2712	2717	4260	finally
    //   2730	2749	4260	finally
    //   2749	2830	4260	finally
    //   2833	2867	4260	finally
    //   2867	2917	4260	finally
    //   2917	2968	4260	finally
    //   2973	2983	4260	finally
    //   2988	2998	4260	finally
    //   3003	3013	4260	finally
    //   3133	3149	4260	finally
    //   3149	3177	4260	finally
    //   3189	3238	4260	finally
    //   3238	3248	4260	finally
    //   3258	3268	4260	finally
    //   3271	3282	4260	finally
    //   3285	3303	4260	finally
    //   3306	3324	4260	finally
    //   3327	3345	4260	finally
    //   3348	3393	4260	finally
    //   3396	3446	4260	finally
    //   3449	3494	4260	finally
    //   3605	3627	4260	finally
    //   3632	3645	4260	finally
    //   3651	3673	4260	finally
    //   3673	3684	4260	finally
    //   3688	3699	4260	finally
    //   3703	3731	4260	finally
    //   3734	3748	4260	finally
    //   3757	3929	4260	finally
    //   3942	3951	4260	finally
    //   4100	4113	4260	finally
    //   4118	4128	4260	finally
    //   4133	4143	4260	finally
    //   4247	4257	4260	finally
    //   4364	4367	4260	finally
    //   3929	3942	4359	finally
    //   4361	4364	4359	finally
    //   4267	4348	4367	java/lang/Exception
    //   2283	2420	4414	finally
    //   2433	2441	4414	finally
    //   2495	2498	4414	finally
    //   3951	3993	4414	finally
    //   3951	3993	4422	java/lang/Exception
    //   527	534	4430	java/lang/InterruptedException
    //   56	78	4435	finally
    //   78	80	4435	finally
    //   56	78	4440	java/lang/Exception
  }
  
  class SocketThread
    extends Thread
  {
    App.NetworkInterfaceData ni;
    MulticastSocket socket;
    
    SocketThread(App.NetworkInterfaceData paramNetworkInterfaceData)
      throws IOException
    {
      this.ni = paramNetworkInterfaceData;
      if (paramNetworkInterfaceData != null)
      {
        this.socket = new MulticastSocket(new InetSocketAddress(paramNetworkInterfaceData.ip, 0));
        this.socket.setNetworkInterface(paramNetworkInterfaceData.iface);
      }
      try
      {
        this.socket.setReceiveBufferSize(32768);
      }
      catch (Exception localException1)
      {
        try
        {
          for (;;)
          {
            this.socket.setTimeToLive(255);
            this.socket.setSoTimeout(1500);
            return;
            this.socket = new MulticastSocket(new InetSocketAddress((InetAddress)null, 0));
            continue;
            localException1 = localException1;
            localException1.printStackTrace();
            App.reportThrowable(localException1);
          }
        }
        catch (Exception localException2)
        {
          for (;;)
          {
            localException2.printStackTrace();
            App.reportThrowable(localException2);
          }
        }
      }
    }
    
    /* Error */
    public void run()
    {
      // Byte code:
      //   0: invokestatic 80	java/lang/System:currentTimeMillis	()J
      //   3: lstore 7
      //   5: aload_0
      //   6: getfield 18	com/dynamixsoftware/printershare/ScanThreadBonjour$SocketThread:this$0	Lcom/dynamixsoftware/printershare/ScanThreadBonjour;
      //   9: invokestatic 86	com/dynamixsoftware/printershare/ScanThreadBonjour:access$000	(Lcom/dynamixsoftware/printershare/ScanThreadBonjour;)[Z
      //   12: astore 9
      //   14: aload 9
      //   16: monitorenter
      //   17: aload_0
      //   18: getfield 18	com/dynamixsoftware/printershare/ScanThreadBonjour$SocketThread:this$0	Lcom/dynamixsoftware/printershare/ScanThreadBonjour;
      //   21: invokestatic 86	com/dynamixsoftware/printershare/ScanThreadBonjour:access$000	(Lcom/dynamixsoftware/printershare/ScanThreadBonjour;)[Z
      //   24: iconst_0
      //   25: baload
      //   26: ifeq +43 -> 69
      //   29: aload 9
      //   31: monitorexit
      //   32: aload_0
      //   33: monitorenter
      //   34: aload_0
      //   35: getfield 41	com/dynamixsoftware/printershare/ScanThreadBonjour$SocketThread:socket	Ljava/net/MulticastSocket;
      //   38: invokevirtual 89	java/net/MulticastSocket:close	()V
      //   41: aload_0
      //   42: monitorexit
      //   43: aload_0
      //   44: getfield 18	com/dynamixsoftware/printershare/ScanThreadBonjour$SocketThread:this$0	Lcom/dynamixsoftware/printershare/ScanThreadBonjour;
      //   47: invokestatic 93	com/dynamixsoftware/printershare/ScanThreadBonjour:access$200	(Lcom/dynamixsoftware/printershare/ScanThreadBonjour;)Ljava/util/ArrayList;
      //   50: astore 5
      //   52: aload 5
      //   54: monitorenter
      //   55: aload_0
      //   56: getfield 18	com/dynamixsoftware/printershare/ScanThreadBonjour$SocketThread:this$0	Lcom/dynamixsoftware/printershare/ScanThreadBonjour;
      //   59: invokestatic 93	com/dynamixsoftware/printershare/ScanThreadBonjour:access$200	(Lcom/dynamixsoftware/printershare/ScanThreadBonjour;)Ljava/util/ArrayList;
      //   62: invokevirtual 98	java/lang/Object:notifyAll	()V
      //   65: aload 5
      //   67: monitorexit
      //   68: return
      //   69: aload 9
      //   71: monitorexit
      //   72: invokestatic 80	java/lang/System:currentTimeMillis	()J
      //   75: lload 7
      //   77: lsub
      //   78: aload_0
      //   79: getfield 18	com/dynamixsoftware/printershare/ScanThreadBonjour$SocketThread:this$0	Lcom/dynamixsoftware/printershare/ScanThreadBonjour;
      //   82: invokestatic 102	com/dynamixsoftware/printershare/ScanThreadBonjour:access$100	(Lcom/dynamixsoftware/printershare/ScanThreadBonjour;)I
      //   85: i2l
      //   86: lcmp
      //   87: ifgt -55 -> 32
      //   90: sipush 4096
      //   93: newarray byte
      //   95: astore 11
      //   97: new 104	java/net/DatagramPacket
      //   100: dup
      //   101: aload 11
      //   103: aload 11
      //   105: arraylength
      //   106: invokespecial 107	java/net/DatagramPacket:<init>	([BI)V
      //   109: astore 12
      //   111: aload_0
      //   112: getfield 41	com/dynamixsoftware/printershare/ScanThreadBonjour$SocketThread:socket	Ljava/net/MulticastSocket;
      //   115: aload 12
      //   117: invokevirtual 111	java/net/MulticastSocket:receive	(Ljava/net/DatagramPacket;)V
      //   120: aload_0
      //   121: getfield 18	com/dynamixsoftware/printershare/ScanThreadBonjour$SocketThread:this$0	Lcom/dynamixsoftware/printershare/ScanThreadBonjour;
      //   124: invokestatic 93	com/dynamixsoftware/printershare/ScanThreadBonjour:access$200	(Lcom/dynamixsoftware/printershare/ScanThreadBonjour;)Ljava/util/ArrayList;
      //   127: astore 14
      //   129: aload 14
      //   131: monitorenter
      //   132: aload_0
      //   133: getfield 18	com/dynamixsoftware/printershare/ScanThreadBonjour$SocketThread:this$0	Lcom/dynamixsoftware/printershare/ScanThreadBonjour;
      //   136: invokestatic 93	com/dynamixsoftware/printershare/ScanThreadBonjour:access$200	(Lcom/dynamixsoftware/printershare/ScanThreadBonjour;)Ljava/util/ArrayList;
      //   139: aload 12
      //   141: invokevirtual 117	java/util/ArrayList:add	(Ljava/lang/Object;)Z
      //   144: pop
      //   145: aload_0
      //   146: getfield 18	com/dynamixsoftware/printershare/ScanThreadBonjour$SocketThread:this$0	Lcom/dynamixsoftware/printershare/ScanThreadBonjour;
      //   149: invokestatic 93	com/dynamixsoftware/printershare/ScanThreadBonjour:access$200	(Lcom/dynamixsoftware/printershare/ScanThreadBonjour;)Ljava/util/ArrayList;
      //   152: invokevirtual 98	java/lang/Object:notifyAll	()V
      //   155: aload 14
      //   157: monitorexit
      //   158: goto -153 -> 5
      //   161: astore 15
      //   163: aload 14
      //   165: monitorexit
      //   166: aload 15
      //   168: athrow
      //   169: astore 13
      //   171: goto -166 -> 5
      //   174: astore 10
      //   176: aload 9
      //   178: monitorexit
      //   179: aload 10
      //   181: athrow
      //   182: astore_3
      //   183: aload_3
      //   184: invokevirtual 65	java/lang/Exception:printStackTrace	()V
      //   187: aload_3
      //   188: invokestatic 71	com/dynamixsoftware/printershare/App:reportThrowable	(Ljava/lang/Throwable;)V
      //   191: aload_0
      //   192: monitorenter
      //   193: aload_0
      //   194: getfield 41	com/dynamixsoftware/printershare/ScanThreadBonjour$SocketThread:socket	Ljava/net/MulticastSocket;
      //   197: invokevirtual 89	java/net/MulticastSocket:close	()V
      //   200: aload_0
      //   201: monitorexit
      //   202: goto -159 -> 43
      //   205: astore 4
      //   207: aload_0
      //   208: monitorexit
      //   209: aload 4
      //   211: athrow
      //   212: astore 17
      //   214: aload_0
      //   215: monitorexit
      //   216: aload 17
      //   218: athrow
      //   219: astore_1
      //   220: aload_0
      //   221: monitorenter
      //   222: aload_0
      //   223: getfield 41	com/dynamixsoftware/printershare/ScanThreadBonjour$SocketThread:socket	Ljava/net/MulticastSocket;
      //   226: invokevirtual 89	java/net/MulticastSocket:close	()V
      //   229: aload_0
      //   230: monitorexit
      //   231: aload_1
      //   232: athrow
      //   233: astore_2
      //   234: aload_0
      //   235: monitorexit
      //   236: aload_2
      //   237: athrow
      //   238: astore 6
      //   240: aload 5
      //   242: monitorexit
      //   243: aload 6
      //   245: athrow
      // Local variable table:
      //   start	length	slot	name	signature
      //   0	246	0	this	SocketThread
      //   219	13	1	localObject1	Object
      //   233	4	2	localObject2	Object
      //   182	6	3	localException	Exception
      //   205	5	4	localObject3	Object
      //   50	191	5	localArrayList1	ArrayList
      //   238	6	6	localObject4	Object
      //   3	73	7	l	long
      //   12	165	9	arrayOfBoolean	boolean[]
      //   174	6	10	localObject5	Object
      //   95	9	11	arrayOfByte	byte[]
      //   109	31	12	localDatagramPacket	DatagramPacket
      //   169	1	13	localSocketTimeoutException	java.net.SocketTimeoutException
      //   127	37	14	localArrayList2	ArrayList
      //   161	6	15	localObject6	Object
      //   212	5	17	localObject7	Object
      // Exception table:
      //   from	to	target	type
      //   132	158	161	finally
      //   163	166	161	finally
      //   111	132	169	java/net/SocketTimeoutException
      //   166	169	169	java/net/SocketTimeoutException
      //   17	32	174	finally
      //   69	72	174	finally
      //   176	179	174	finally
      //   0	5	182	java/lang/Exception
      //   5	17	182	java/lang/Exception
      //   72	111	182	java/lang/Exception
      //   111	132	182	java/lang/Exception
      //   166	169	182	java/lang/Exception
      //   179	182	182	java/lang/Exception
      //   193	202	205	finally
      //   207	209	205	finally
      //   34	43	212	finally
      //   214	216	212	finally
      //   0	5	219	finally
      //   5	17	219	finally
      //   72	111	219	finally
      //   111	132	219	finally
      //   166	169	219	finally
      //   179	182	219	finally
      //   183	191	219	finally
      //   222	231	233	finally
      //   234	236	233	finally
      //   55	68	238	finally
      //   240	243	238	finally
    }
    
    public void send(DatagramPacket paramDatagramPacket)
    {
      StringBuilder localStringBuilder1;
      try
      {
        try
        {
          if (this.socket.isClosed()) {
            return;
          }
          this.socket.send(paramDatagramPacket);
          return;
        }
        finally {}
        localInetAddress = this.ni.ip;
      }
      catch (Exception localException)
      {
        localException.printStackTrace();
        localStringBuilder1 = new StringBuilder().append("ni: ");
        if (this.ni == null) {
          break label148;
        }
      }
      InetAddress localInetAddress;
      StringBuilder localStringBuilder2 = localStringBuilder1.append(localInetAddress).append(" src: ").append(this.socket.getLocalAddress()).append(" dst: ").append(paramDatagramPacket.getAddress()).append(" | ");
      if ((this.ni != null) && (this.ni.iface != null)) {}
      for (Object localObject1 = this.ni.iface;; localObject1 = "")
      {
        App.reportThrowable(localException, localObject1);
        return;
        label148:
        localInetAddress = null;
        break;
      }
    }
  }
}


/* Location:           C:\Users\Admin\Desktop\Decompiler\JAD\jd-gui-0.3.6.windows\classes_dex2jar.jar
 * Qualified Name:     com.dynamixsoftware.printershare.ScanThreadBonjour
 * JD-Core Version:    0.7.0.1
 */